Excel Power Queryの使い方入門|CSV取り込みから自動集計まで
Excelでデータ分析をしていると、毎月同じCSVファイルを取り込んで、同じ手順で整形・集計する作業が発生します。その繰り返しを自動化するのがPower Queryです。Power Queryを使えば、CSV取り込みから データ整形・集計までの一連の作業を記録でき、次回からは「更新ボタン」を押すだけで済みます。
本記事では、Power Queryの基本機能から実践的な操作まで、初心者向けに解説します。
注記: 本記事のスクリーンショットや手順はExcel for Microsoft 365を基にしています。バージョンにより画面が異なる場合があります。
Power Query でできること——手作業の集計を自動化する仕組み
従来のCSV取り込みとPower Queryの違い
従来のExcel操作では、CSVファイルを開いて手動でコピー&ペーストするか、「データ」タブから「テキストファイルウィザード」で取り込みます。この方法では、新しいCSVが届くたびに同じ手順を繰り返す必要があります。
Power Queryはこの作業を「クエリ」として記録します。一度クエリを作成すれば、ソースファイルが更新されるたびに「更新」ボタンを押すだけで、全ての取り込みと変換ステップが自動実行されます。
以下は従来の方法とPower Queryの処理フローの比較です。
| 項目 | 従来の方法 | Power Query |
|---|---|---|
| CSVの取り込み | 手動コピー&ペーストまたはウィザード | 自動読み込み、更新可能 |
| データ整形 | 手作業で列削除や型変換 | クエリに記録、再実行可能 |
| 複数ファイル処理 | 1ファイルずつ処理 | フォルダ内全ファイルを一括処理 |
| 手戻り修正 | 前のステップをやり直す | クエリの各ステップを編集 |
Power Query が得意な3つの作業(取り込み・整形・結合)
Power Queryが真価を発揮するのは、以下の3つの場面です。
| 作業 | 説明 |
|---|---|
| データの取り込み | CSVはもちろん、テキストファイル、JSONなど複数のファイル形式に対応。複数のCSVを1つのテーブルに統合することも簡単です。 |
| データの整形 | 列の削除、フィルタ、型変換、分割・結合など、一般的なデータ整形操作をクエリの中で記録できます。 |
| データの結合 | 複数のテーブルをキー列で結合(内部結合、左外結合など)する際、手動でVLOOKUPを書く必要がありません。 |
CSVファイルをPower Queryで取り込む手順
1つのCSVを取り込む基本操作
最初のステップは、単一のCSVファイルをPower Queryで読み込む基本操作です。以下の6ステップで完了します。
| ステップ | 操作内容 |
|---|---|
| 1. データタブを選択 | リボンメニューの「データ」タブをクリック |
| 2. ファイルメニューを開く | 「新しいクエリ」→「ファイルから」→「CSVから」を選択 |
| 3. ファイルを指定 | ファイル選択ダイアログから取り込むCSVを指定 |
| 4. 設定を確認 | プレビューで区切り文字・文字コードを確認して「読み込み」をクリック |
| 5. エディターが起動 | 「Power Query エディター」ウィンドウに取り込んだデータが表示 |
| 6. 確定 | 「閉じて読み込む」でExcelシートに結果が表示される |
フォルダ内の複数CSVを一括取り込みする
毎月異なるファイル名でCSVが保存される場合、フォルダ内の全CSVを一括で読み込めます。
| ステップ | 操作内容 |
|---|---|
| 1. フォルダオプション選択 | 「データ」タブ→「新しいクエリ」→「ファイルから」→「フォルダから」 |
| 2. フォルダを指定 | CSVが格納されているフォルダのパスを入力または参照で選択 |
| 3. 結合・読み込み実行 | 「結合と読み込み」を選択(Power Queryが自動的にフォルダ内全CSVを検出・統合) |
| 4. メタデータを確認 | 「ファイルパス」や「ファイル名」などのカラムを必要に応じて削除 |
この方法の利点は、フォルダに新しいCSVが追加されても、クエリを更新するだけで自動的に読み込まれることです。
文字コード・区切り文字を手動で指定する
ファイルが自動認識されない場合は、文字コードと区切り文字を手動で指定します。
| ステップ | 操作内容 |
|---|---|
| 1. ファイルを開く | CSVファイルを右クリック→「Power Queryで編集」でエディターを起動 |
| 2. クエリパネルを確認 | 「詳細エディター」で対象クエリのパラメータを確認・編集 |
| 3. 関数を修正 | Csv.Document(Source, [Delimiter=";", Encoding=65001]) の形式で設定 |
| 4. 確定 | プレビューで正しく表示されていれば「閉じて読み込む」をクリック |
Encoding値の誤指定はデータ破損につながります。UTF-8なら65001、Windows-1252なら1252を指定してください。
取り込んだデータを整形する——よく使う操作5選
不要な列を削除・並び替える
取り込んだCSVに不要な列が含まれていたり、列の順序が分析に適さない場合があります。
以下の3つの操作で列を管理できます。
| 操作 | 手順 |
|---|---|
| 列を削除 | Power Query エディターで列を右クリック→「削除」を選択 |
| 列を並び替え | 列ヘッダーをドラッグするか、列を選択→右クリック→「並び替え」 |
| 操作を記録 | このステップをクエリに記録すれば、次回更新時に自動実行される |
フィルタで条件に合う行だけ残す
特定の条件を満たす行だけを抽出したい場合、フィルタを使用します。
| ステップ | 説明 |
|---|---|
| 1. フィルタを開く | フィルタしたい列のヘッダーの下向き矢印をクリック |
| 2. 条件を指定 | 「地域 = 東京」「売上 > 100万」など、抽出条件を入力 |
| 3. 確定 | 「OK」をクリック(条件に合う行のみが表示される) |
複数の条件を組み合わせるには、各列ごとにフィルタを繰り返し適用します。
列の分割・結合・型変換
データの形式が分析に合わない場合、列を分割・結合・変換します。
列を分割する例:「2024-01-15」を「2024」と「01」と「15」に分割
| ステップ | 操作 |
|---|---|
| 1. 分割メニュー | 列を右クリック→「列の分割」→「区切り文字で分割」 |
| 2. 区切り文字指定 | ハイフン「-」などの区切り文字を指定 |
| 3. 確定 | 「OK」をクリック(3つのカラムに分割される) |
列を結合する例:「Doe」と「John」を「John Doe」に統合
| ステップ | 操作 |
|---|---|
| 1. 複数列選択 | 統合したい列を Ctrl+クリックで複数選択 |
| 2. マージメニュー | 右クリック→「列のマージ」 |
| 3. 区切り文字指定 | スペースなどの区切り文字を指定 |
データ型を変換する例:テキスト「2024」を数値に変換
| ステップ | 操作 |
|---|---|
| 1. 列を選択 | 列ヘッダーをクリック |
| 2. 型を変換 | 「ホーム」タブ→「データ型」→「整数」「10進数」「日付」など選択 |
ピボット/ピボット解除
データが縦長形式で保存されている場合、ピボットテーブル的に横形式に変換することがあります。
ピボットの例:日付ごとの売上を列として表示
| ステップ | 操作 |
|---|---|
| 1. 列を選択 | ピボットしたい列を右クリック |
| 2. ピボット実行 | 「ピボット」を選択 |
| 3. 設定を指定 | 行に残す列、値に使う列を指定 |
逆に、横形式を縦形式に戻す場合は「ピボット解除」を使用します。
カスタム列の追加(計算列)
既存の列から新しい列を計算で作成できます。
| ステップ | 操作 |
|---|---|
| 1. メニュー選択 | リボンメニュー→「列の追加」→「カスタム列」 |
| 2. 式を入力 | 列名(例「税込売上」)と計算式(例 [売上] * 1.1)を入力 |
| 3. 確定 | 「OK」をクリック |
計算式にはPower QueryのM言語関数(DateTime.LocalNow()、if...then...else、Text.Length()など)を使用できます。ExcelのワークシートR関数(TODAY、IF、LENなど)とは構文が異なるため注意してください。
Power Query の限界——ここから先は別のツールを使う
Power Queryは強力ですが、万能ではありません。以下のようなケースでは別のツールの検討が必要です。
| ケース | 原因 | 代替ツール |
|---|---|---|
| 数百万行超のデータ処理 | Excelのメモリ制限と処理速度 | SQL DB、Python、LeapRows |
| 複雑な条件分岐・ループ | Power Queryのカスタム列では非対応 | Python、R |
| Excel外への自動出力 | データベース・クラウドストレージ連携が必要 | Power Automate、Pythonスクリプト |
まとめ——月次作業を「更新ボタン1回」に変える
Power Queryは、Excelユーザーが手作業で繰り返していたCSV取り込み・整形・集計の作業を、クエリとして自動化できるツールです。
Power Queryの主な特徴:
- 単一または複数のCSVを取り込める — フォルダ内の全ファイルも一括対応
- 列の削除、フィルタ、分割・結合、ピボット、計算列など一般的な整形操作に対応
- 一度クエリを作成すれば、次回からはボタン一つで実行 — 毎月同じ手順が自動化される
月単位でデータ取り込みが発生するビジネス(営業報告、在庫管理、財務分析など)では、Power Queryの導入で大幅な時短が期待できます。まずは単一CSVの取り込みから試してみてください。