• 締切済み

csvでの表示がおかしい

「1.xlsx」というファイルで A1は文字列として設定してあります。 そこに、「4-1」と入力してあります。 これを「1.csv」で保存し、開くと A1は「4月1日」と表示され、ユーザー定義という設定になっています。 なぜでしょうか? これを、開いても4-1と表示されるようにしたいのですがどうすればいいですか? Excel2010 win10

noname#238989
noname#238989

みんなの回答

  • Prome_Lin
  • ベストアンサー率42% (201/470)
回答No.10

No.4です。 それは、もうこちらでは確認できませんから、分かりません。 まず、「csv」は、「テキストファイル」という大きなカテゴリーのファイルであることはお伝えしました。 この「テキストファイル」には、文字コードという問題があります。 「Windows」では、標準の文字コードは、昔から「Shift-JIS(ANSI)」というもので、扱える文字の数が少ない規格です。 扱える文字が少ない、というのは、難しい漢字が扱えない、と思ってください。 扱える文字が少ないのは、問題なので、「Unicode」(ユニコード)という文字コードの規格が出来ました。 この規格では、扱える文字の数が、飛躍的に多くなり、難しい漢字だけでなく、世界中の文字に(もちろん、100%「すべて」ではないと思いますが)対応できるようになり、1つのフォント(たとえば「MS 明朝」なら「MS 明朝」)だけで、かなりの国や地域の文字に対応できるようになりました(インターネット上では、かなり必要です)。 この「Unicode」という規格は、ちょっとやっかいで、いっぱい種類があります。 有名なのは、「UTF-16」(Windowsで「Unicode」というとこれ)、と「UTF-8」という規格です。 文字コードは、この3つ「Shift-JIS」、「UTF-16(WindowsではUnicode)」、「UTF-8」が、有名です。 したがって、もし、そのソフトが「UTF-8」しかダメな仕様でしたら、それに従うしかありません。 エクセル2016でしたら、「UTF-8」の「csv」ファイルの出力に対応していますが、「2010」はどうだったか、覚えていません。 読み込む側の仕様書を調べてみてください。

  • Prome_Lin
  • ベストアンサー率42% (201/470)
回答No.9

No.4ですが、エクセルで直接開いてはいけません。 メモ帳で開くか、エクセルで開くのでしたら、メニューの「データ」→「外部データの取り込み」→「テキストファイル」・・・をしなければなりません。 まず、「csv」ファイル、というのは、テキストファイルです。 「テキストファイル」というのはメモ帳で開くことのできるファイルです。 「テキストファイル」というのは、文字情報だけのファイルで、フォントや文字の色、文字の大きさなどの情報が含まれていない「あいうえお」なら「あいうえお」という情報だけです。 「テキストファイル」という大きなカテゴリーの中に、「csv」(「Comma-Separated Values」の略)ファイルという形式があり、エクセルがこの世に現れる前から存在していますので、本来は、エクセルとは何の関係もないのですが、エクセルをインストールすると、自動的にエクセルに関連付けられるために、エクセルのファイルだと思っておられる方も多いですが、全く違います。 文字情報だけなので、さまざまなソフトで扱うことができ、大変有用なのです。 しかし、エクセルは、やっかいなことに、いろいろ勝手な判断をしてしまうソフトです。 たとえば「012」という数字を入力すると、「12」になってしまうのも、その1つです。 今回の「4-1」も同じです。 セルの書式を文字列に設定しないといけません。 しかし、「4-1,a,b,c」という内容の「csv」ファイルをそのまま開くと、エクセルは上記のように勝手な判断をします。 どうしても、「4-1」を「4-1」として読み込みたい場合は、メニューの「データ」→・・・を邪魔くさくてもしなければならないのです。 メモ帳で開いて「4-1」になっていれば、問題ありません。 とにかく、エクセルで確認されたい場合は、「データ」→「外部データの取り込み」→・・・をするか、簡単に確認したければ、メモ帳で開くのが一番簡単です。

noname#238989
質問者

補足

あー。 なるほど。 開くたびに、その読み込みが必要なのですね。 問題は、そのcsvをほかの場所で読み込んだとき ソフトなど エラーがでるのです なので、4-1という形式にしたかったのです csvで4-1と表示させて確認することが目的ではないのです それとも、メモ帳で4-1となっていれば 正しいということで、読み込むソフトの問題なのでしょうか?

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.8

大変失礼しました。「1.csv」で保存し、これを開いても4-1と表示されるようにすることはできません。裏技では’’4-1と入力して「1.csv」で保存し、これを開いくと4-1と表示されますが、ご希望の方法ではないでしょう。

noname#238989
質問者

補足

’’4-1と入力し 保存、 再度ひらくと ’4-1 と、なっていますが ’も消したいです

  • Prome_Lin
  • ベストアンサー率42% (201/470)
回答No.7

No.4です。 「カンマ」にチェックを入れ と回答したのですが、カンマの項にチェックを入れておられないのだと思います(ここにチェックを入れないと、標準はタブ区切りとして読み込まれます)。 もう一度、試してください。

noname#238989
質問者

補足

なんとなく、この作業の意味がわかってきました。 それで、表示されたファイルをcsvで保存するとまたもとに戻ってしまいますが・・・。 どこかミスしているのでしょうか?

  • msMike
  • ベストアンサー率20% (363/1775)
回答No.6

[No.5]の補足として書いておきますが、「CSVの編集にExcelを使わないこと」と云ふのは、私に云はせれば所謂 暴言 です。

noname#238989
質問者

補足

その辺はわかりませんが、 csvじゃないと、使えないので、使わないとかいわれてもどうしようもないので・・・。

  • msMike
  • ベストアンサー率20% (363/1775)
回答No.5

下記は Excel 2013 における手順を記していますが、この[外部データの取り込み]機能は大昔から存在しています。 Alt+A+ZX+FT ⇒ ファイル名選択 ⇒ [インポート] ⇒ [テキスト ファイル ウィザード]メニューの[区切り文字]で“カンマ”を指定 ⇒ [次へ] ⇒ [列のデータ形式]を“文字列”を指定 ⇒ [完了]を実行して進めばOKかと。

noname#238989
質問者

補足

回答4のとおりになりました。 これなら、最初から、A1に 4-1,1,3 と入力するだけでいいということになりますが・・・。

  • Prome_Lin
  • ベストアンサー率42% (201/470)
回答No.4

「1.csv」ファイルをメモ帳で開いてみてください。 ちゃんと、「4-1」になっているはずです。 エクセルでそのまま開くと、エクセルが自動的に日付と判断してしまうのです。 エクセルでそのようなデータを読み込みたい場合は、メニューの「データ」→「外部データの取り込み」→「テキストファイル」から「1.csv」を選択して、「インポート」ボタンを押し、現れた画面(テキストウィザード)から「次へ」→「カンマ」にチェックを入れ、「次へ」、最後の画面で、列「A」を指定して、「文字列」にチェックを入れてから読み込むと、「4-1」と表示されます。

noname#238989
質問者

補足

上記のとおりやってみました。 表示されましたが、 A1 A2 すべてA1の中に入ってしまっていますが・・・。 A1 は A1のまま保存はできないのでしょうか? 4-1,1,3 と、A1にすべて入ってしまっています。

  • HohoPapa
  • ベストアンサー率65% (454/691)
回答No.3
  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.2

そういう仕様になっていますので、諦めるしかありません。4-1と表示されるようにするには、 ’4-1 (4-1の前にアポストロフィを付ける)と入力してみてください。

noname#238989
質問者

補足

csvを編集して、保存をしても再度開くと元通り エクセルを編集してcsvにすると元通り に、なりました。 ダメみたいです そもそも、' を無効にするのがcsvなのでは?

  • intelli
  • ベストアンサー率47% (154/326)
回答No.1

CSVの編集にExcelを使わないことです。 CSVで保存した時点で全ての書式がなくなります。 CSVを再度開いたときに、書式を勝手に割り付け。 Excelの悪い癖です。 書式がひつようなデータは、Excelのブック形式で保存することが肝心です。

noname#238989
質問者

補足

必要があるので、質問しました

関連するQ&A

  • エクセルで桁を揃えるために0を表示したセルをCSVでも有効にしたい

    エクセルで000050.000など桁をそろえるためにユーザー定義で設定しました。ところが設定したものをテキスト(CSV)で保存したところ、桁をそろえるために入力していたものがなくなっています。000050.000でしたら、 ただの50になっています。 ためしにセルの書式設定で文字列に変更したところ同じ動きをしました。 CSVに出したとき000050.000と表示されるにはどのようにすればよろしいでしょうか? どうぞよろしくお願いいたします。

  • 困っています!! ExcelをCSVファイルにしたあと。

    ご存知の方にとっては恥ずかしいくらいの質問かもしれませんが、どうか教えて下さい! win xp、Office2000を使用しています。 Excelでデータの編集が終わったあとに、ファイル形式をCSVで保存するよう言われ、入力後に「ファイルの名前を付けて保存」→ファイルの種類で「CSV」を選択して保存を致しました。 その際、ファイル名は「英小文字のみ.csv」にしています。 保存後、確認の為に再度そのファイルを開いたところ、 1、文字幅に合わせて大きさを変えた列幅が基準値に戻ってしまっている。 2、「文字列」を使用して、ゼロから始まる数字を打ち込んだ列がゼロを表示しない(01>1)、数字を全角で打ち込んでいるのに半角に戻ってしまう(15>15)。 という状態になってしまいます。 テキストエディタで確認したところ、きちんとカンマで区切られてはいるのですが、上記の2に関しては、半角になったままだったりと、入力した状態での表示ではありませんでした。 保存する際に、 「英小文字のみ.csv」はCSV(カンマ区切り)と互換性のない機能が含まれている可能性があります。 というメッセージが出ます。 Excelに関しては、まったくといっていいほど初心者です。苦手で逃げていた自分が悪いのですが…。 今回CSVというファイル形式も初めて知りました…。 NETで調べたりしてみたのですが、どうしてもわかりません。 CSVにしたあとに、通常1のようになってしまうものなのでしょうか? また、入力したままの状態が表示されるようにするには、どうしたらよいのでしょうか? ご存知の方がいらっしゃいましたら、ぜひお知恵を貸してください! よろしくお願い致します!

  • CSV保存の際に余計なダブルクオテーション

    教えてください。 エクセルファイルをCSV形式で保存する際に、"(ダブルクオテーション)を各文字列の前後に挿入した上で保存しています。 しかし、保存したファイルをテキストファイルで開いてみると、"(ダブルクオテーション)の数が増えてしまっています。 例: EXCELで開いている際には、"a"として表示されている。 しかしCSV保存後にテキストで開くと、"""a"""となっている。 これを、CSV保存後にも、"a"のままとしたいです。 どのようにしたら良いでしょうか?

  • ExcelVBA CSV読込書き込み

    ExcelVBAです。Excelバージョンは2003,2007です。 CSVファイルを読み込み、書き換えて、別のファイル名で保存します。 一通りできるのですが、次の場合どの様にしたら良いでしょうか? CSVのデータ項目が、20桁ほどの数値、住所などの文字列、5桁ほどの数値となっています。 20桁ほどの数値は文字列扱いにしたいのですが、Excelでは指数表示になってしまいます。 そのままCSVとして保存すると指数で保存されてしまいます。 これを文字列として表示し、CSV保存でも文字列として保存したいのです。 よろしくお願いします。

  • CSVで【12-13】のデータが【12月13日】と表示されてしまう

    タイトルの通りですが、CSVでファイルを保存して、保存したファイルを開いた時に、元の【12-13】データが【12月13日】と表示されてしまいました。 インタネット上で調べると、データの元の形へ変換する方法が分かりになりましたが 問題として、どこかで書式を設定しておいて、これからいつでもCSVファイルを開くと文字列の形で表示したいと考えています。 設定方法はご指導宜しくお願い致します。有難うございます。

  • カンマ区切りcsvファイル上の'000'データの表示(エクセル)

    Win95+エクセル2000です。 DBからカンマ区切りになるようにデータを抽出後、 一旦メモ帳に貼り付けてから名前をつけて保存でcsvファイルにし、 それをエクセルで開いて見ているのですが、 000で持っているデータが0になってしまいます。 ユーザー定義で見れなくはないですが、 一回目に開いた時から000で表示させることは可能でしょうか? 上記手順も含めてなにかご意見お持ちの方よろしくお願いします。

  • ExcelからCSV出力して読込むと削除変換される

      Excelのブック1のシートに入力されたデータを 一度、CSVファイルに出力して このCSVファイルを別のツール(perlなど)で変換して この変換されたCSVファイルを再び 別のExcelのブック2のシートに読み込ませたいのですが Excelのブック1から出力したCSVファイルを 別のツールで変換しなくてもそのまま Excelのブック2のシートに読み込ませた時点で 文字の一部が消えたり数式が値になったりしてしまっています。 具体的には、 セルの先頭の ' (シングルクォーテーション) が消えてしまったり、 1つ足りなくなったりしています。また、 先頭の =1+1 などは、(表示上) 2になったりしてしまっています。 なお、セルの書式設定が標準だと、先頭の @ の後に続けて入力すると 正しく入力できませんが、セルの書式設定を文字列にすると、 この @ の問題は起きなくなりました。でも、セルの書式設定を文字列にしても ' (シングルクォーテーション) や数式が計算結果になる問題は 解決していません。 (問1) 削除されたり変換されてしまうのは     ・先頭の ' (シングルクォーテーション)     ・先頭の =     ・先頭の @    の3つのケースだけでしょうか。    このほかにもありましたら教えてください。 (問2) 先頭の =1+1 の場合ですが    セルの書式設定が標準の状態で =1+1 と入力すると    数式バーには =1+1 と表示されていて    セルの書式設定が標準だと2と表示されていてその後    セルの書式設定を文字列にしても2と表示されています。    逆に、    セルの書式設定が文字列の状態で =1+1 と入力すると    数式バーには =1+1 と表示されていて    セルの書式設定が文字列だと =1+1 と表示されていてその後    セルの書式設定を標準にしても =1+1 と表示されています。    いずれも入力したデータは同じなのに    入力時点での表示形式で表示内容が固定されてしまっていて    その後、表示形式を変更しても表示内容が反映されていない    ように感じるのですが何が起きているのでしょうか。 (問3) 前述の理由により、CSVファイルをセルの書式設定が文字列    の状態で読み込ませることはできるのでしょうか。    (後でセルの書式設定を文字列に変更しても =1+1 と表示されないので) (問4) Excelのブック1のシートのセルには     ユーザーが好き勝手な文字や数値や記号を入力します。     何を入力されても変化してしまわないようにすることはできるでしょうか。      ( 頭に ' を付けることをユーザーに強要するとか、       事前にセルの頭に ' を入力しておくなどはなしです) (問5) もし、できない場合、Excelのブック1のシートの各セルの先頭に     ' (シングルクォーテーション) や = から始まる数式を    入力することができないように制限をかけることはできるのでしょうか。 よろしくお願いします。(Windows7,Excel2010)

  • csvファイルでの日付設定「yyyy/mm/dd」が保存すると元に戻ってしまいます

    Excelでcsvファイルの「2004/2/9」を「2004/02/09」としたいのですが、 「セルの書式設定」の「ユーザ定義」で「yyyy/mm/dd」で変換して保存し、またcsvファイルを開くと「2004/2/9」に戻ってしまいます。 どうしてもわかりません。 OSはWIN MeでExcel2000を使用しています。 すいませんが誰か教えてください!

  • power autmateでエクセル書式設定の方法

    power automate desktopでxlsxファイルの書式設定がうまくいかず困っています。ご教示いただければ幸いです。 処理の流れとしては ①WEBからcsvファイルをダウンロード(ファイル名は毎回変わる) ②エクセルを起動 ③DLしたcsvファイルを開く ④csvファイルをaaa.xlsxファイルとして保存(エクセルは閉じない) ⑤aaa.xlsxのA列が指数表記になっているのでセルの書式設定で表示形式を「数値」にする 以上ですが、①~④までは出来ています。 また⑤においては「A1~A最終行セルの選択」という処理もできています。 数値表示に出来ればよいので、セル単体ではなくA列全体を選択して変更する方法でも良いです。 VBScriptの実行で対応可能かと思うのですがうまくいきません。 やり方をご存じの方、どうぞよろしくお願いいたします。

  • CSVをExcelで開いた時の文字形式について

    いつもお世話になっています。 CSVをExcelで開いた時の文字形式について教えてください。 「aaa.csv」というファイルの中には以下のような文字列が記載されています。 --------------------------------- "2014/3","000123" --------------------------------- これをExcelで開くと、 --------------------------------- Mar-14, 123 --------------------------------- こうなってしまいます。 Excel上で、セルの書式設定を直せば正しく表示されるのは分かっているのですが、 CSVをExcelで開いたときに、自動で  ・年月を「2014/03」と表示、  ・数字の前0を落ちないように表示 させるにはどうしたらよいのでしょうか? よろしくお願いします。

専門家に質問してみよう