別々の表で管理している2019年と2020年の「社員」の情報を1つの表にまとめたいです。
こうした作業もPower Queryで自動化できますか?
その場合、Power Queryエディター上の「クエリの追加」というコマンドが有効ですよ!
具体的な使い方について解説していきますね。
解説動画:【パワークエリ#7】データ転記・連結テクニック – 複数の表データを結合し、一つに集約する作業を自動化する(クエリのマージ/クエリの追加)
この記事の内容は下記の動画でも解説しています。
コメント欄の「データ連結(クエリの追加)」の時間の部分をクリックするとデータ連結の解説へジャンプできますよ!
はじめに
本題に入る前に、この記事がおすすめな方を挙げてみます。
- 別表のレコード(行レコード)の連結作業を自動化したい方
- データ整形・加工の工程が複数あり、かつその作業が定期的に発生する方
- Power Query(パワークエリ)の使い方を習得したい方
前提条件
この記事のテクニックを使うためには、以下の条件を満たす必要があります。
- ExcelのバージョンはExcel2010以降(Microsoft365含む)が必須
- Excel2010/2013ユーザーの場合、事前にMicrosoft社公式HPよりPower Query(パワークエリ)のダウンロードが必要(Excel2016以降は標準機能)
- Power Query(パワークエリ)の概要を理解していること
→まず、以下の記事で概要を把握することをおすすめします。
はじめに 本題に入る前に、この記事がおすすめな方を挙げてみます。 Excelでブック内、あるいは別ファイルのデ …
同じフィールドの複数表のレコードを連結したい場合に「クエリの追加」が有効
以下のように、同じフィールドの複数の表がある場合、1つの表にレコードを連結したいケースがあります。
こうした場合、従来のワークシートでは手作業によるコピー&ペーストが主流でした。(自動化するならVBA)
しかし、Power Query(パワークエリ)なら、VBAを使わずにこうしたデータの連結を自動化できます。
しかも、他のデータの整形・加工作業が複数工程あるなら、なおさら便利ですよ!
では、Power Query(パワークエリ)でのクエリの追加手順を確認していきましょう。
Power Query(パワークエリ)でのクエリの追加手順
今回の前提として、クエリの追加を行う対象テーブルは2種類ともブック内にあり、それぞれ事前にPower Queryエディターに取り込んでいる状態からスタートするとします。(ブック内のデータ取得について復習したい方は下記記事を参照)
はじめに 本題に入る前に、この記事がおすすめな方を挙げてみます。 同じブック内の表データ(テーブルまたはセル範 …
クエリの追加は以下の2ステップとなります。
【STEP1】ワークシート上のリボン「データ」タブから「追加」ダイアログを起動
まず、ワークシート上のリボン「データ」タブをクリック(①)し、「データの取得」をクリック(②)します。
続いて、「クエリの結合」をクリック(③)すると表示される「追加」をクリック(④)してください。
【STEP2】「追加」ダイアログで連結するクエリを指定
「追加」ダイアログが起動します。
まず、連結するテーブル数(=クエリ数)が2つか3つ以上かを選択(⑤)します。
今回は「2つのテーブル」を選択しています。
続いて、連結するテーブルを指定(⑥)したら、「OK」をクリック(⑦)して完了です。
手順⑤を「3つ以上のテーブル」を選択した場合、手順⑥以降は連結するテーブルをまとめて指定したら「追加」をクリックし、「OK」をクリックすればOKです。
手順⑥は「最初のテーブル」に指定したテーブルのレコードの下に「2つ目のテーブル」に指定したテーブルが連結されます。
レコードの並び順が決まっている場合は、テーブルの指定順に気をつけましょう。
「プレビュー」ウィンドウ上でクエリの追加が確認できたらOK!
「プレビュー」ウィンドウを見ると、無事設定どおりに別表のレコードが連結されていますね!
あとは、その他の処理を行い、任意の方法でデータを出力すれば完了です。
【参考】既存のクエリ内で別表のレコード連結を行いたい場合は
ちなみに、上記の方法では「追加1」という新たなクエリが生成されてしまいます。
もし、クエリを増やさずに既存のクエリ内(例えば「社員マスタ_2019」)にレコードを連結したい場合は、「社員マスタ_2019」クエリをPower Queryエディター上で開き、以下のコマンドを使えばOKです。
リボン「ホーム」タブにある「クエリの追加」コマンドを実行すると、上記STEP2の「追加」ダイアログが起動します。(手順⑥の「最初のテーブル」は非表示の状態)
あとは、上記の手順⑥の「2つ目のテーブル」以降と同じ流れで操作を進めてください。
ケースバイケースで使い分けましょう!
【参考】クエリの追加内容を変更したい場合は
もし、あとでクエリの追加条件を変更したい場合は、「クエリの設定」ウィンドウの任意のステップをダブルクリック、もしくは歯車マークをクリックしましょう。
サンプルファイルで練習しよう!
可能であれば、以下のサンプルファイルをダウンロードして、実際に操作練習をしてみてください。
サンプルファイル_PowerQueryデータ整形_クエリの追加.xlsx
※サンプルファイルのダウンロードには無料メルマガに登録いただく必要があります。
(上記リンクから登録フォームへ遷移します)
サンプルファイルを開いたら、次の手順を実施してください。(今までの解説のまとめです)
- ワークシート上のリボン「データ」タブをクリック
- 「データの取得」をクリック
- 「クエリの結合」をクリック
- 「追加」をクリック
- 連結するテーブル数(=クエリ数)が2つか3つ以上かを選択
- 連結するテーブルを指定
- 「OK」をクリック
本記事の解説と同じ結果になればOKです!
さいごに
いかがでしたでしょうか?
クエリの追加はPower Query(パワークエリ)を便利に使うためには、覚えておくべき基本テクニックです。
特に、同じフィールドの複数の表から1つの表へ集約する際など、このクエリの追加を使えるとめちゃくちゃ便利ですよ!
なお、Power Query(パワークエリ)の各種テクニックは、私の拙著でも体系的に解説していますので、こちらも参考にしてみてください。
また、よりコアな情報を発信していくために「公式LINE」を開始しましたので、ご興味があれば以下バナーから友だち追加をお願いします!
特典として、Excelワークシート関数一覧(計22スライド)やExcelショートカットキー一覧(計25スライド)等をプレゼント!
ご参考になれば幸いですm(_ _)m
データ連結は表の数が多ければ多いほど、自動化しないと大変な作業になります。
しかし、従来はVBAでないと連結作業の自動化はできませんでしたが、Power Queryならマウス操作中心で自動化を設定できるために便利ですね。
複数表を一元集約する機会が多い方は、ぜひPower Query(パワークエリ)を学んでみてくださいね!
とてもわかりやすくで助かります。excel頑張ります!!
小川さん
コメントありがとうございます!
わかりやすいとのことで良かったです!
引き続きExcel頑張ってくださいね^_^
パワークエリを初めて使おうと調べていて
森田さんのサイト、動画は分かりやすくてすごくありがたいです
横に広がった肥大化エクセルシート(複数シートへの値参照)を
パワークエリを使って値が更新できるようにしたいと思ってます
アクセスとの連携でデータ加工をアクセスで済ませてから
エクセルへ渡すことも考えたのですが
データ元がエクセル複数シートなのでエクセルのみで完結した方が良いと考えます
パワークエリでどこまでできるのかがまだ掴めていなくて
相談させていただけるとありがたいのですが、
よろしいでしょうか。
にしさん
コメントありがとうございます。
サイト・動画が分かりやすいとのことで良かったです!
元データがExcel複数シートであれば、たしかにパワークエリで対応できそうですね。
同じような表構成のシートなら、こちらの記事のテクニックでも対応可能だと思います。
https://excel-master.net/data-base/power-query-data-acquisition-book-multiple/
ご参考になれば幸いですm(__)m