こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Excelで開くと列が認識されるcsvの作成方法

引き継いだファイルで不思議なものがありました。
いちいちインポート設定をしないで済む便利なものでしたので、
作成方法をご存知でしたら教えてください。

--------------------------------------------------------
・ファイル名「xxxxx.xls」
・エディタで開くと「aaa,あああ,...」となっている。
・Excelで開くと「ファイル形式と拡張子が一致しません。ファイルが破損しているか~」という警告がでる。無視して開くと、「,」区切りが認識され、列に分かれて表示される。
--------------------------------------------------------

csv ファイルの拡張子だけ xls にしても再現できませんでした。
(「,」が区切りと認識されずに開かれる)

このファイルの作り方を教えてください。よろしくお願いいたします。

利用環境は Windows7、Excel2013 です。

投稿日時 - 2015-09-16 18:36:29

QNo.9048743

暇なときに回答ください

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(8)

ANo.8

csvファイルって、基本的に ,カンマ区切り(半角)なんで、問題は無いはずなんですがね。
オフィスのバージョンで対処が違うのかな? ちなみに私は2010です。

投稿日時 - 2015-09-17 22:42:54

ANo.7

No6に補足です。

(2)のcsvファイルをExcelで開く方法ですが、プログラムから開くで規定のプログラムを選択した後に、「この種類のファイルを開くときは、選択したプログラムをいつも使う」にチェックを入れてください。次回以降そのパソコンでCSVを開く際に
ダブルクリックするだけでExcelでCSVを開くことが出来るようになります。

投稿日時 - 2015-09-17 11:31:59

ANo.6

>(1)ファイルとしてはcsvが必要(システムに取り込むため)
>(2)取り込み前に一部ユーザーが中身を目視で確認する

なぜそのようなデータが出来上がったのかは不明ですが、

(1)についてはつまりシステム側のインポートファイルはCSVファイルなんですよね?
xlsである必要はないと。

(2)については、Explorerでダブルクリック時に列で分かれた状態でExcelで開きたいということですよね。
これはファイルの関連付けでCSVをExcelで開くように設定すれば、CSVファイルをダブルクリックするだけでExcelで開かれます。
この場合拡張子がCSVであれば、先の回答に記述した通り、Excelがカンマの部分で列を分割して表記しますし、拡張子偽装ではないため警告のエラー表示も出なくなります。

該当のファイルを「○○.xls」ではなくて、「○○.csv」にリネームします。
データの中身は「aaa,あああ,いいい」のようにカンマ区切りとなるテキストデータである必要が有ります。
「○○.csv」を右クリックから「プログラムから開く」を選択し、「規定のプログラムの選択」を選んでください。
推奨されたプログラムにExcelがあればそこから、無ければ参照からExcelの実行ファイルを選択して「OK」を選択してください。

参照する場合においてのExcelの実行ファイルは以下の箇所にあります。
(64bit)Office2013の場合
 C:Program Files\Microsoft Office 15\root\office15\EXCEL.EXE
(32bit)Offise2013の場合
 C:Progrum FIles(x86)\Microsoft Office 15\root\office15\EXCEL.EXE


「"aaa,あああ,いいい"」のようにカンマ区切りを囲うようにダブルクォーテーションで括られている箇所はExcelで開いた際に一つのセルにカンマを含む文字列として記述されます。


以上のことから、csvをxlsに偽装する必要もなく、csvの状態でExplorerからダブルクリックで開くことによるExcelでの視認も可能かと思います。

投稿日時 - 2015-09-17 11:26:58

ANo.5

>csv ファイルの拡張子だけ xls にしても再現できませんでした。
>(「,」が区切りと認識されずに開かれる)
拡張子を書き換えることは不適切な手段です。
カンマ区切りでフィールドを区切れないこともありますので、.csvを.xlsに書き換えることは考えない方が良いでしょう。(12,345→12345になる)

投稿日時 - 2015-09-17 07:23:54

ANo.4

No3に追加です

>・エディタで開くと「aaa,あああ,...」となっている。

再現出来ていませんでしたね。
No3の方法で作成した「○○.xls」をテキストエディタで開いた場合は「aaaあああいいい」とタブ区切りになっておりました。

office2007での検証なのでバージョンによる違いかもしれませんが。

他の回答者様のように本来、カンマ区切りで列を分けたデータの拡張子はCSVであるべきですので、無理にxlsとする必要はないのでは?
カンマで区切られたテキストデータの拡張子がcsvであり、Excelではcsvのデータを開く際にカンマの箇所で列を分けて開くように設計されていますので。

また、開いた際にカンマ区切りで1つのセルで表示された場合においても、データタブの区切り位置にてカンマを選択すれば列を分けることが出来ますので。

投稿日時 - 2015-09-16 19:23:23

補足

ご丁寧な回答ありがとうございます。

恐れ入ります、引き継いだファイルでは
特に読み込みや区切りの設定をしないでも、列認識ができるものになっていました。

本来的には拡張子の偽装は避けたいのですが、
今回2つの要件がありこの形式にこだわっています。
(1)ファイルとしてはcsvが必要(システムに取り込むため)
(2)取り込み前に一部ユーザーが中身を目視で確認する

(2)のときにcsv読み込みをいちいちするのが手間(もしくは操作説明が必要になる)ため、
クリック実行からすぐに列が再現されるファイルがあると便利という状態です。
(かつ実在しているが再現方法が不明)

投稿日時 - 2015-09-17 10:01:52

ANo.3

他に方法があるかもしれませんが、以下の方法で状態が再現できましたので参考までに。

(1)新規ブックの作成して『A1=aaa|B1=あああ|C1=いいい』のように入力
(2)名前を付けて保存から「CSV」で保存
(3)「選択したファイルの種類は複数のシートを含むブックをサポートしていません。」で「OK」を選択
(4)「○○.csvには、CSV(カンマ区切り)と互換性のない機能が含まれている可能性があります。」で「はい」を選択
(5)(1)を閉じる際に変更の保存確認で「いいえ」を選択して閉じる
(6)「○○.csv」を「○○.xls」にリネーム(拡張子を変更)
(7)Excelメニューの「開く」から「○○.xls」を開く
(8)「開こうとしているファイル'○○.xls'の形式は、ファイル拡張子が示す形式と異なります。」で「はい」を選択
(9)「カンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」を選択して「次へ」を選択
(10)「カンマ」のチェックボックスにチェックを入れて「完了」を選択
(11)A~C列へ別れたファイルが開くので「上書き保存」を選択
(12)「○○.xlsには、テキスト(タブ区切り)と互換性のない機能が含まれている可能性があります。」で「はい」を選択
(13)(7)で開いたファイルを閉じる際に変更の確認で「いいえ」を選択

移行、「○○.xls」をエクスプローラからダブルクリックで開き、「開こうとしているファイル'○○.xls'の形式は、ファイル拡張子が示す形式と異なります。」のメッセージにて「はい」を選択して開くと、A~Cへ区切られた形でファイルが開きます。

投稿日時 - 2015-09-16 19:11:20

ANo.2

それは拡張子が逆です。

aaa,あああ  というファイル形式は、拡張子をCSVにしておかないといけません。

試しに以下のものをメモ帳に貼り付け、TEST.CSVとして保存し、エクセルで読み込ませてください。

1月,2月,3月,4月,5月,6月
120,130,118,141,109,133

すると添付画像のようになります。

投稿日時 - 2015-09-16 19:08:55

補足

こちらを貼り付けて、
csv保存 → Excel で(右クリックから)開いた場合も、
列区切りが認識されずに表示されました。

環境依存もあると思いますが、
引き継いだファイルでは必ず列が認識されていました。
(Excelを完全終了してから実行で再現可能)

投稿日時 - 2015-09-17 09:57:04

ANo.1

"aaa","あああ" とすれば問題ないはずです。
昔から、文字列は””で数字は””無しというのがCSVのルールのはず。

投稿日時 - 2015-09-16 19:06:06

あなたにオススメの質問