「データ」→「外部データの取り込み」→「データの取り込み」→CSVファイルを選択→テキストファイルウィザードで列のデータ形式を「文字列」に変更

「データ」→「外部データの取り込み」→「データの取り込み」→CSVファイルを選択→テキストファイルウィザードで列のデータ形式を「文字列」に変更

 データとデータの間を「,」(カンマ)で区切ったCSVファイルは,データのやり取りによく使われるファイル形式だ。はがき作成ソフトのファイルをCSV形式で出力してExcelに取り込んだり,データベースから抽出したCSV形式のデータをExcelで開く機会は珍しくないだろう。

 ところが,いざCSVファイルを開いてみると,もともとは「03」で始まる電話番号が入力されていたはずなのに,先頭の「0」がなくなっていたり,「1-15」「1-28」といった製品番号が,勝手に「1月5日」「1月28日」といった日付にすり替わっていて困ることがある(図1)。

図1●CSVファイルをそのまま開くと,電話番号の先頭の「0」が消えたり,「1-15」「1-28」といった文字列が勝手に日付表示に変わったりすることがある

 これはExcelの“自動判別機能”が災いしている。Excelでは入力したデータによって,数字と判断したものは数字にふさわしい表示にしたり,日付と判断できるものはセルの表示形式を「日付」に変更して表示したりするからだ。

CSVファイルは「テキストファイルウィザード」で読み込もう

 そんな不都合を回避するには,普通にCSVファイルを開くのではなく,まず新規ファイルを作って,そこで「テキストファイルウィザード」を使ってデータを読み込むとよい。

 やり方は簡単だ。まず,「データ」メニューから「外部データの取り込み」→「データの取り込み」を選び(図2),開く画面でCSVファイルを指定する(図3)。すると,テキストファイルウィザードが起動する(図4)。

図2●CSVファイルを正しく開くには,まず新規ファイルを作ってから,「データ」メニューで「外部データの取り込み」→「データの取り込み」を選ぶ

図3●次に,開きたいCSVファイルをクリックし(1),「開く」を押す(2)

図4●「テキストファイルウィザード」が開くので,「次へ」を押す