Power Query(パワークエリ)でできること【実例も含めて解説】

Power Query

皆さんはExcelで資料を作るときに欲しいデータをどこかのシステムから手作業で落としてきたり、手作業で加工していますか?

データベースからCSVファイルをダウンロードしてシートに貼り付けたり、VLOOKUPを使って別表から値を取得したり、SUMIFを使って集計をしたり、LEFTやIFなどで文字加工したりなど、、、

手作業が多くて結構大変ですよね。何度もやる作業ならVBAでマクロを組む方法がありますが、開発スキルもいるし、慣れていないと時間がかかります。

しかし、これらのデータ処理が簡単にできて、しかもボタン一つで自動化出来るとしたらどうでしょうか?業務が楽になると思いませんか。

【結論】データ処理(取得→加工→出力)が簡単に自動化できます

Power Queryはデータ処理が簡単になるツールです。Microsoftが開発しています。ExcelやPower BIで利用でき、データの取得、加工、出力が簡単にできます。一度設定すると一連の流れを自動化出来ます。そのため、定期的にデータ加工をしている方は非常に役立ちます。

こんな人に役立ちます
  • 毎週、作業時間の集計作業をしている
  • 毎月、各支店の販売実績を収集して集計作業をしている
  • Excelで日常的にデータ加工をしている
    など・・・

Power Query(パワークエリ)でできること

データの取得

ファイル(Excel、CSVファイル、PDFなど)からデータを取得できる

自分のパソコンの中や共有フォルダにある、ExcelやCSVファイル、PDFファイルなんかも取得できます。ExcelやCSVファイルは同じレイアウトであれば、同じフォルダに置けば一括で取得可能です。

データベースからデータを取得できる

AccessやOracle、SQL Serverなどのデータベースからデータを取得できます。

クラウドサービスのデータを取得できる

SharePoint、FabricなどのMicrosoft系はもちろん、Googleアナリティクスなどの他ベンダーのサービスもデータを取得できます。

Webサイトの情報を取得できる

Webサイトにアクセスし、特定の情報だけを取得(スクレイピング)して、表形式に加工できます。

データ件数はExcelの限界を突破できる

大量のデータでもサクサク処理できるので、時間を節約できます。Excelは最大100万件程度ですが、Power Queryは最大20億件程度も処理できます。

データの加工

取得したデータを加工できます。

データ型を形式変換したり、文字列を加工できる

数字を文字形式に、文字を数値形式に、20240630などの数字を日付形式に変換できます。

関連記事

不要な列を削除したり、ソート順を変更できる

データ出力したくない不要な列を削除したり、特定の列に昇順、降順を指定できます。

列を追加して文字列操作や四則演算などの計算ができる

複数の列の値を結合したり、特定の区切り文字ごと(スペース区切りなど)に列を分割したり、頭何文字を取得したり出来ます。数値形式であれば、計算用の列を追加して掛け算、足し算などの計算も可能です。

これらはM言語と呼ばれるPower Queryで使える関数型言語を使って記述できます。

IF文を使って条件分岐もできるため、複雑な加工も可能です。

関連記事

データを結合、追加できる

他で取得したデータを、結合するキーを指定して結合し、列を追加できます。Vlookupで他の表からデータを取得するイメージです。また、結合は列追加になりますが、他で取得したデータを行追加することもできます。

横並びの表を縦に並び替えられる

以下のようなマトリクス表は人間が見やすいですが、データとして扱いにくいです。

縦に並び替えることができます。

関連記事
  • Power Queryを使ってExcelの「横」並びの表を「縦」に並び替える(執筆中)

データの出力

データの取得、加工が終わったらExcelやPower BIに出力可能です。Excelに出力した場合、出力用シートが自動的に作成され、シート内にデータが取得されます。

ここまで出来たら、データの更新があれば「更新」ボタンを押すだけで、データの取得、加工、出力を自動的に行なってくれます。

関連記事

その他

作成したクエリを他のExcelに引っ越しできる

Power Queryで作成したクエリを他のExcelファイルで活用したい場合、「クエリと接続」から簡単に他のExcelファイルにコピーできます。

コピー&ペーストするか、ファイルにエクスポート&インポートで簡単に引っ越しできます。

Excelを使ってPower Queryを実際に触ってみよう

Power Queryでデータを処理する流れを簡単に紹介します。Microsoft365版のExcelを使用しています。

Excelで作った売上明細ファイルを取得して、数量と単価を掛けて金額列を追加します。

テストデータを自分で用意する場合は、Copilotを使えば簡単に作成してくれます。

私は次のメッセージを入力して、テストデータを作ってもらいました。

「テストデータを作成してください。列は、売上日、得意先、商品名、数量、単価です。商品名はお菓子でお願いします。得意先は、架空の企業名を適当に考えてください。売上日は2025年1月~2025年12月です。 件数は各月で8件作成してください。」

データの取得

以下の手順でExcelブックからデータを取得します。

Excelファイルを選択し、インポートします。

今回はデータの加工を行うため、「データの変換」をクリックします。データの加工をしなければ「読み込み」をクリックで良いです。

データの加工

読み込んだデータに対して、数量と単価を掛けた金額列を追加します。

列の追加以外にも、フィルタリングや並べ替え、不要な部分の削除、形式の変更などが出来ます。これらの操作は、エディタ内のメニューやボタンを使って簡単に行えます。

「列の追加」タブを開き、「カスタム列」をクリックします。

「新しい列名」に「金額」と入力します。「カスタム列の式」に数式を入力しますが、「使用できる列」から数量、単価 (円)をダブルクリックすると、項目名を自動入力してくれます。「*」で掛け算し、OKをクリックします。

金額列が追加されます。「適用したステップ」にステップが追加され、クリックするとステップの数式が参照できます。この数式はM言語と呼ばれ、直接修正も可能です。

列の追加以外でも、何かデータ加工を行った場合、「適用したステップ」に自動的にステップが追加されていきます。

データの出力

データの加工が完了したら、「閉じて読み込む」をクリックします。

加工したデータをExcelシートに出力されます。出力された表はテーブルになっており、データとして扱いやすくなっています。ここからピボットテーブルを使って集計したり、グラフを挿入してデータ分析などを行えます。

読み込み元のExcelが更新され、データを最新化したい場合はどうすればいいでしょうか?

その場合は、「クエリ」タブをクリックし、「更新」をクリックします。

データが更新されます。

まとめ

Power Queryは、データ処理(取得→加工→出力)が簡単に自動化できる強力なツールです。

直感的なインターフェースと豊富な機能で、ExcelマクロやExcelの数式をゴリゴリ組んでデータ処理するより簡単です。

もしまだPower Queryを使ったことがないなら、ぜひその便利さを体験してみてください。

プロフィール
たがみ

IT業界20年程度のシステムエンジニアです。
構築したシステムのデータ検証をExcelで実施することが多く、検証作業の効率化を模索しているときにPower Queryと出会いました。
Excel業務効率化の手助けになればと当ブログを解説しました。
今ではデータ分析でPower BIを活用しており、Power BI、Excelの両方でPower Queryを活用しています。

たがみをフォローする
Power Query
たがみをフォローする
タイトルとURLをコピーしました