Power QueryでCSVを一括読み込み!フォルダ内のデータを自動で整理

Power Query

今月もCSVファイルが山ほど届いてるんですけど…手作業でまとめるの、正直もうしんどいです…

あ〜それ、わかる〜。でもね、Power Queryの「フォルダーから取得」ってやつ使えば、一気に読み込めてまとめられるよ。手作業、卒業できるかもよ?

「毎月届く大量のCSVファイル、開いてコピペするの…もう疲れた!」

そんなあなたにぴったりなのが、Power Queryの「フォルダーからの取得」機能! 同じフォーマットのファイルなら、まとめて読み込んで、データ加工まで一気にできちゃいます。

この機能を使えば、毎月の面倒なルーチン作業もほぼ自動化! 時間も手間もグッと減らせて、効率アップ間違いなしです!

こんなときに便利!

  • 毎月、支店や店舗ごとの売上データがCSVで届く…
  • システムから出力されたファイルは日別・月別でバラバラで保管されてる…
  • 手動でまとめるのが地味に大変…

そんなときこそ頼れるのが、フォルダー内のCSVを一気にまとめてくれるこの方法!

事前準備

まずは、加工したいCSVファイルをひとつのフォルダにまとめておきましょう。 フォルダの場所さえ決めておけば、あとはPower Queryが一気に読み込んでくれます。

そしてもうひとつ大事なのが、ファイルのフォーマットを統一しておくこと! 列名や項目の並びがバラバラだと、うまく結合できないことがあるので要チェックです。

Power Queryでフォルダから読み込む

  1. Excelを開いて、「データ」タブ →「データの取得」 →「ファイルから」 →「フォルダーから」をクリック
  1. 表示された「参照」ダイアログで、CSVファイルが入っているフォルダーを選び、[開く]を押す
  1. フォルダー内のファイル一覧が表示されるので、「結合」→「データの結合と変換」を選択
  1. サンプルファイルのプレビューが出てくるので、内容を確認して [OK] で進めます!

Power Query エディターが開き、すべてのCSVファイルが1つの表に結合された状態になっています!

文字コードとは?

文字コードは、文字をデータとして保存するときのルールみたいなもの。これが合ってないと、日本語が「文字化け」したり、意味不明な記号になったりします。UTF-8やShift_JISなどがよく使われます。

区切り文字とは?

CSVの中身は、項目ごとに「区切り文字」で仕切られています。よくあるのは「カンマ(,)」ですが、他にも「セミコロン(;)」や「タブ(\t)」なんかも使われます。

ヘルパークエリとは?

Power Queryで「フォルダーから」の取得を使って複数のCSVファイルなどを結合する際、自動的に作成される補助的なクエリ群がヘルパークエリです。

Power Queryが複数ファイルを結合する処理を自動化するために生成するクエリで、ファイルを取得する際の情報が保存されています。

CSVの内容を確認・調整

ここからは、Power Queryの出番です。

不要な行や列の削除、データ型の変換、フィルターの適用など、Power Queryエディター上で自由にデータを整えられます。

よく使う加工例をいくつかご紹介します。

ファイル名から年月を取り出す

CSVファイル名を活用して、年月を表す列を追加します。

今回はファイル名が「”売上データ” + “西暦4桁-月2桁” + “.csv”」というルールで統一されていることを利用して、必要部分を抽出します。

  1. 「Source.Name」列を選択して「列の追加」タブ→「抽出」→「区切り記号の間のテキスト」を選択
  1. 「開始区切り記号」に「売上データ」、「終了区切り記号」に「.csv」を入力。詳細設定オプションはそのままでOKです。「売上データ」と「.csv」に挟まれた部分のみを抽出します。
  1. 新しい列が一番右に追加されるので、ドラッグして先頭へ移動します。
1行目を見出しにする

「Column1」「Column2」といった仮の見出しを、CSVファイルに持っている本来の見出しに置き換えます。

不要な列を削除する

不要な列は、列の見出し部分を右クリック → 「削除」で消します。

不要な行を削除する

複数のCSVファイルを読み込むと、各ファイルの見出し行がデータ内に含まれてしまいます。必要なデータだけ残すように、余計な行を削除して調整します。

列のデータ形式を修正

日付が文字列になっていたら、見出し横のアイコンをクリックして「日付」に変更します。

数字の列は「整数」に変更。複数列を一括で変えるときは右クリック→「型の変更」を使うと便利!

加工したデータをExcelに読み込む

加工が終わったら、「ホーム」タブ →「閉じて読み込む」をクリック!

これですべてのCSVファイルがひとつにまとまり、加工された状態でExcelに取り込まれます。

次回以降の更新もラクラク!

新しいCSVファイルが届いたら、同じフォルダにポンと追加するだけ! あとはExcelの「更新」ボタンを押せば、最新データに自動でアップデートされます

右クリックメニューから「更新」を選ぶか、 「テーブルデザイン」タブ →「更新」をクリックすればOK!

フォルダに追加したファイルの内容が、ちゃんと反映されてます。

まとめ

Power Queryの「フォルダから取得」機能を使えば、複数のCSVファイルをまとめて取り込み&加工できてめっちゃ便利!

今回のポイントはこんな感じです。

  • CSVファイルはフォーマットをそろえて、ひとつのフォルダにまとめておく
  • Excelの「フォルダーから」機能で一括読み込み&結合
  • ファイル名から年月などの情報を追加するのもアリ!
  • 新しいファイルが届いたらフォルダに追加→Excelの「更新」を押すだけで自動反映!

毎月たくさんのCSVファイルが届くような業務でも、この方法を使えば作業効率がグッとアップします! 「毎月コピペでぐったり…」だった人は、ぜひ一度試してみてくださいね

うわっ、めちゃくちゃラクじゃないですか…?地味にしんどかった作業が秒で終わるとか最高すぎます!これ…もう感動ですっ!!