拡張子が.csvのCSVファイルを生成します。このファイルでは、1行のすべてのデータがカンマで区切られています。
1,2,3,4
1,2,3,4
ファイルはEメールで送られます、そして、私が顧客がそれを開くとき、私は彼女が列に配列されたデータを見ることを望みます。
そのようなことは可能ですか?
シモンズ:私は自由に距離計を変えるかもしれません。
カンマの代わりにtabを使うだけです。それでもうまくいかない場合は、タブ区切りファイルにxls拡張子を付けます。
すべてのシステムでcsv
を読み取り可能にするだけの場合は、文書化されていないトリックがあります。最初の行にSEP=;
を書きます。この行は、どの文字をセパレータとして使用するかをExcelに指示します(実際には任意の(単一の)文字を使用できます(;,|@#'
...))。
注:この行はcsv
ファイル自体の一部です。 Excelでスプレッドシートの一部になることはありませんことはありません。つまり、どのフォーマットを作成またはエクスポートするように定義しても、表示されず、書き込まれません。
CSVファイルを開くときのExcelの動作は、ローカル設定およびlist separator
の下で使用されるRegion and language » Formats » Advanced
によって大きく異なります。デフォルトでは、ExcelはすべてのCSVがその区切り文字で保存されていると想定します。 CSVが他の国から来ていない限り、これは本当です!
あなたの顧客が他の国にいるならば、あなたは彼らが他の結果を見るかもしれません。
たとえば、ここでは、ドイツのExcelが米国のようにカンマの代わりにセミコロンを使用することがわかります。
あなたをさらに混乱させるために、その設定はExcel Options » Advanced » Use system separators
の下で、または上で示されるように地域の設定によって別々に設定されることができる小数点記号と干渉します。 Excelでは、小数点記号とリスト区切り記号に同じ記号を使用できません。バックアップの区切り文字として自動的にカンマまたはセミコロンが使用されます。 続きを読む
例を挙げて3つのファイルを作成します。それぞれ異なる区切り記号を付けて、Excelで開きます。
COMMA SEMICOLON TAB
あなたのExcelと同じではありませんか?私はそうだと思いました。
それでは手動で拡張子を同じCSVファイルからXLSに変更して今何が起きているのか見てみましょう。まず、Excelはファイルの拡張子が内容と一致しないことを警告するので、Excelは内部の問題を推測しようとします。
COMMA SEMICOLON TAB
結論:TAB +名前の変更+警告を無視=すべてのシステムで勝利しましたか?
たぶん、私はあなたの国の外の顧客にはそれほど確実ではないでしょう。
最善の方法は、最初に空白のExcelを開き、次にData » Get data from text
に移動して手動で区切り文字としてカンマを選択するように顧客に指示することです。
「.csv」を「.txt」に置き換えてExcelを起動し、その.txtファイルを開くことができます。それからExcelは、あなたが分離文字として "、"を使うことを指定できるアシスタントをあなたに示すでしょう。このファイルをもう一度.csvとして保存すると、次回Excelが必要なときにそのファイルを開くようになります。
あなたが他の国からあなたに送られたCSVファイルを開くだけでよい場合は短期的には -
ワードパッドでファイルを開き、find and replaceを使用して、発行国が使用しているすべての区切り文字(例:;)を変更し、コンマに置き換えます。 (例).
発行国が別の記号の代わりにコンマを使用していないことを確認してください(たとえばスペインでは小数点を使用する場合はコンマを使用するので、コンマを小数点に置き換えてから別の記号を見つけて置き換える必要があります)コンマで).
長期的な解決策ではありませんが、急いで仕事中にコントロールパネルにアクセスできない場合は、ファイル自体を読み取り可能にするのに十分に適しています。
この状況で私が使用したもう1つの解決策は、CSVではなく基本的なHTMLファイルを出力することでした。 Excelはこれをエラーなしで開くことができます。ファイル内のフォーマットの少なくとも一部も読み取ることができます。
私は同じ問題を思い付きました。 Excelが間違って解析しているというCSVファイルがあり、インポートウィザードが必要でした。
簡単な修正は、CSVの名前をTXTに変更することでした。また、Wizardが列構造を正しく認識するのに役立ちました。
これはこれまでで最も厄介な答えですが、うまくいきました。私は毎日CSVファイルを使っています。私はいつもそれらを作成して、そしてExcelで見ます。今日、この問題を見たことがない12年後に、それは私に起こりました。 CSVファイルを開かず、列をフォーマットしません。私が昨夜Excelで作成したいくつかのcsvファイルでさえ、1行につき1列に開くでしょう。
解決方法:タスクマネージャでExcel.exeのすべての開いているインスタンスを確認してください。すべてのインスタンスを終了し、もう一度csvファイルを開いてみてください。
facepalm