ラボ > PHP:ファイル関連、アプリケーションソフト:Excel

CSVファイルの数字がExcelで開くと勝手に書式を判別される(Excel、PHP)

CSVファイルで、「0001」が「1」と表示される。

作成日:2018-04-19, 更新日:2018-07-10

基本

▼CSVの中身

zebra,0001,10/10

・Excelで開くと「0001」が「1」として表示→数値になる。
・Excelで開くと「10/10」が「10月10日」として表示→日付になる。
※セルの書式設定を文字列に変換してもダメ。

Excelのインポート時に「標準」じゃなく「文字列」指定すればOK。

PHPで出力させた場合

下記のような配列を「fputcsv()」でファイル出力した場合

array('0123', '"0456"', "'0789'", '="0123"')

▼CSVファイルの中身

0123,"""0456""",'0789',"=""0123"""

▼Excelで開いた内容

表示される内容 123 "0456" '0789' 0123
セルの中身 123 "0456" '0789' ="0123"