いまさら聞けないExcelの使い方講座

【Excel】CSVファイルをダブルクリックで開いてはいけない!?エクセルでCSVを正しく取り込む方法

CSV形式のファイルをダブルクリックしたら数値がおかしい?!

 普段の業務で、CSV形式のファイルを扱う場面に立ち会ったことのある人は少なくないのではないでしょうか。例えば、あるシステムからデータを引き継いで、別のアプリケーションで使いたい場合など、データのやり取りの際にCSV形式のファイルが使われることがあります。また、インターネットで公開されるさまざまなデータ(例えば、総務省統計局の人口統計データなど)も、CSV形式で保存されていることがあります。

 CSVはComma Separated Valueの略で、文字どおり「カンマ(Comma)で区切られた(Separated)値(Value)」が入力されたファイルのことを指します。CSV形式のファイルは、特定のアプリケーションに限定されることなく、さまざまなソフトやアプリケーションで使える形式であるため、使われることが多いのです。例として、Windowsに付属している「メモ帳」を使って、「会員名簿.csv」というCSV形式のファイルを開いてみましょう(①)。

 Windowsでは、CSVファイルは既定でExcelに関連付けられているので、CSVファイルをダブルクリックするとExcelが起動し、ファイルの中身を確認できます。これは便利なようでいて、実はさまざまな問題につながってしまうこともあります。

 次の例は、先ほどの①と同じファイルをダブルクリックで開いたものです(②)。ぱっと見た感じでは、正しく表示されているように見えますが、注意して見てみるとうまく表示されていない箇所があるのがわかりますか。

 元のCSVファイルの「会員番号」列のデータは、「0001」のように先頭に「0」が付いて4桁になっています(③)が、Excelで開いてみると、A列の会員番号の先頭の「0」はなくなっています(④)。

 このように、正しく元のデータのまま取り込めないと、あとの業務で困ったことになりますよね。そこで今回は、CSVファイルを正しくExcelに取り込む方法を解説します。CSVファイルをExcelに取り込む方法として、従来の「テキストファイルウィザード」を使って取り込む方法と、Power Query(Excel 2019やMicrosoft 365で利用可能)を使って取り込む方法の2つがあります。今回は、後者のPower Queryを使ってCSVデータを正しくExcelに取り込む方法を解説します。

CSVファイルをExcelに取り込む

 では、ExcelのPower Queryを使って、先ほどの「会員名簿.csv」を取り込んでみましょう。任意のExcelシートを開き、[データ](①)→[テキストまたはCSVから](②)をクリックします。

 [データの取り込み]ダイアログボックスが表示されるので、目的のCSVファイルが保存されている場所へ移動します。目的のファイルが見つかったらクリックして選択し(③)、[インポート](④)をクリックします。

 「会員名簿.csv」という画面が表示され、CSVファイルの中身が表示されます。この段階ではまだ「会員番号」列のデータは先頭の「0」が消えている状態です(⑤)。このように先頭の「0」が消えてしまうのは、Excelが勝手にデータ型を判断してしまうからなのです。今回の例では、Excelが「会員番号」列のデータを整数型だと判断したため、前ゼロを削除して数値として取り込もうとしているわけです。今回、「会員番号」列のデータは文字列として扱いたいので、データ型を変更する必要があります。[データの変換](⑥)をクリックしましょう。

 すると、「会員名簿 – Power Queryエディター」という画面が表示されます。「会員番号」列が選択されている(⑦)のを確認したら、[ホーム]タブ(⑧)の真ん中あたりにある[データ型:整数](⑨)をクリックして、表示されるメニューから[テキスト](⑩)をクリックします。

 [列タイプの変更]ダイアログボックスが表示されるので、[現在のものを置換](⑪)をクリックします。

 すると、先ほどの「会員番号」列のデータは、「0001」や「0002」のように先頭に「0」が表示されるようになりました(⑫)。文字列データとして認識されたためです。

 データ型が変換されたのを確認したら、[閉じて読み込む](⑬)をクリックしてデータを読み込みます。

 Excelのシートにデータが取り込まれました(⑭)。「会員番号」列を見てみると、先頭に「0」が付与された4桁の数字は文字列として正しく表示されていますね(⑮)。

 この機能を使ってCSVデータを取り込むと、テーブル形式で表示されるのも注目ポイントです。テーブルになっていることで、このあとの操作がラクになる場合もありますよね。

 でも、従来のテキストファイルウィザードのほうが使い勝手がよいと思っている読者もいるかもしれません。実は、Excel 2019やMicrosoft 365でも、従来のテキストファイルウィザードを使えるので、安心してください。使い方については、次回の記事で解説しますので楽しみにしていてくださいね。

CSVデータを正しくExcelに取り込もう

 今回は、ExcelのPower Queryを使って、CSVファイルを正しくExcelに取り込む方法を解説しました。CSVファイルを受け取った時は、安易にダブルクリックで表示せずに、今回のように、[データ]タブ→[テキストまたはCSVから]からデータを取り込むことをおすすめします。その際、Excelが意図しないデータ型で読み込もうとしていたら、変更することも忘れないでくださいね。