別のExcelブック内のテーブルやシートのデータを加工したいけど、どうしたらいいですかね?
その場合、Power Query(パワークエリ)の「ブックから」でデータ取得から始めると良いですよ!
具体的な手順を解説していきますね。
解説動画:【パワークエリ#4】別ブックを対象としたデータインポート手順 – 他のExcelブック内の単一または複数データ(シート/テーブル)を自動取得する
この記事の内容は下記の動画でも解説しています。
コメント欄の「1つの表」の時間の部分をクリックすると該当の解説へジャンプできますよ!
はじめに
本題に入る前に、この記事がおすすめな方を挙げてみます。
- 別ブックのデータを整形・加工したい方
- データ整形・加工の工程が複数あり、かつその作業が定期的に発生する方
- Power Query(パワークエリ)の使い方を習得したい方
前提条件
この記事のテクニックを使うためには、以下の条件を満たす必要があります。
- ExcelのバージョンはExcel2010以降(Microsoft365含む)が必須
- Excel2010/2013ユーザーの場合、事前にMicrosoft社公式HPよりPower Query(パワークエリ)のダウンロードが必要(Excel2016以降は標準機能)
- Power Query(パワークエリ)の概要を理解していること
→まず、以下の記事で概要を把握することをおすすめします。
解説動画:【パワークエリ#1】「パワークエリ(Power Query)」とはどんな機能か?大枠の流れや手順、使い方まとめ この記事の内容は下記の動画でも解説しています。 コメント欄の各プロセスの時間部分をクリックすると該 …
データ整形の元データが別ブックのテーブル/シートの場合に「ブックから」のデータ取得が有効
こうしたデータの整形・加工作業が複数工程あり、かつ定期的に発生する業務ならPower Query(パワークエリ)が便利です。
従来必要であった「別ブックを開いて、Excelへコピペする」という工程をショートカットできるからです。
では、別ブックのデータの取得手順を確認していきましょう。
別ブックのデータ取得手順
Power Query(パワークエリ)による別ブックのデータ取得は、以下の5ステップとなります。
【STEP1】リボン「データ」タブから「データの取り込み」ダイアログを起動
まずは、リボン「データ」タブをクリック(①)し、「データの取得」をクリック(②)します。
そして、「ファイルから」をクリック(③)の上、「ブックから」をクリック(④)しましょう。
【STEP2】任意のブック(.xlsx/.xlsm/.xls)をインポート
「データの取り込み」ダイアログが起動しますので、データの取得元となる任意のブックを選択(⑤)し、「インポート」をクリック(⑥)します。
今回は「商品マスタ.xlsx」を選択しました。
【STEP3】ナビゲーター画面から「Power Queryエディター」を起動
ナビゲーター画面が起動します。
指定したブック内のシートやテーブルが一覧で表示されるため、取得対象のテーブルまたはシートを指定(⑦)しましょう。
指定するとナビゲーター画面の右側にプレビューが表示されるため、指定したデータに誤りがないかを確認(⑧)し、問題なければ「データの変換」をクリック(⑨)しましょう。
複数のテーブル・シートを取り込む場合の方法については、以下の記事をご参照ください。
はじめに 本題に入る前に、この記事がおすすめな方を挙げてみます。 別ブックの複数のテーブル/シートをまとめて整 …
【参考】ナビゲーター画面のテーブル名・シート名の見分け方
なお、今回はテーブル名もシート名も同じ「商品マスタ」のため、Power Query(パワークエリ)上で重複を避けるために、テーブル名の方が「商品マスタ1」として認識されています。
テーブル名とシート名の見分け方は、アイコンの形を見てください。
アイコンの上部に色が付いているものがテーブル、アイコンの下部にタブがあるものがシートです。
もちろん、ブック内にテーブルが存在しない場合は、シートだけが表示されます。
【STEP4】「Power Queryエディター」を閉じてデータを読み込み
Power Queryエディターが起動します。
まずは、取り込んだデータの各列のデータ型に問題ないかを確認(⑩)しましょう。
なお、クエリ名は手順⑦で指定したテーブル名/シート名になっているため、別名称が良ければ「クエリの設定」ウィンドウ上でクエリ名を書き換えましょう。
その他、データ整形・加工を行いたい方は、ここで任意の作業を順次設定してくださいね。
問題なければ、「閉じて読み込む」をクリック(⑪)し、「閉じて次を読み込む」をクリック(⑫)すればOKです。
「データ型」とは
データ型とは、「テキスト(文字列)」や「数値」「日付」といったデータの種類のことで、テーブルの1行目の見出し名の左横にあるマークで判断が可能です。
たとえば、今回は、「商品コード」と「商品名」はテキストなので[ABC]というマークがそれぞれの左横にあります。
そして、「単価」は数値なので[123]というマークが左横にありますね。
他にどんなデータ型があるかについては、マーク部分をクリックすると一覧が表示され、任意で変更することが可能ですよ。
もし、違うデータ型が指定されてしまった場合は、こちらで変更しましょう。
【STEP5】「データのインポート」ダイアログでデータの返し先を選択
「データのインポート」ダイアログが起動しますので、どこにデータを返すかを指定(⑬)しましょう。
今回は、既存ワークシートのA1セルを起点にデータを返すように設定しました。
設定が完了次第、「OK」ボタンをクリック(⑭)します。
これにて作業は完了です!
ワークシート上に指定ファイルのデータが取り込まれればOK!
無事A1セルを起点に別ブックのデータが取り込まれました!
そして、ワークシートの右側に「クエリと接続」ウィンドウが表示されます。
そのウィンドウ上に「商品マスタ1」というクエリが作成されていることがわかりますね。
なお、クエリ名の下を見ると、5行のデータが読み込まれたことがわかります。
サンプルファイルで練習しよう!
可能であれば、以下のサンプルファイルをダウンロードして、実際に操作練習をしてみてください。
サンプルファイル_PowerQueryデータ取得_ブックから.zip
※サンプルファイルのダウンロードには無料メルマガに登録いただく必要があります。
(上記リンクから登録フォームへ遷移します)
ファイルを開いたら、次の手順を実施してください。(今までの解説のまとめです)
- リボン「データ」タブをクリック
- 「データの取得」をクリック
- 「ファイルから」をクリック
- 「ブックから」をクリック
- 任意のExcelブックを選択
- 「インポート」をクリック
- 取得対象のテーブルまたはシートを指定
- 指定したデータが問題ないか確認
- (問題なければ)「データの変換」をクリック
- 各列のデータ型に問題ないかを確認
- (問題なければ)「閉じて読み込む」をクリック
- 「閉じて次を読み込む」をクリック
- データの返し先を既存ワークシートのA1セル設定
- 「OK」ボタンをクリック
本記事の解説と同じ結果になればOKです!
さいごに
いかがでしたでしょうか?
本テクニックもPower Query(パワークエリ)のデータ取得の中では基本の一部です。
別ブックのデータを取り扱う頻度も高めなので、ぜひ慣れてくださいね。
なお、Power Query(パワークエリ)の各種テクニックは、私の拙著でも体系的に解説していますので、こちらも参考にしてみてください。
また、よりコアな情報を発信していくために「公式LINE」を開始しましたので、ご興味があれば以下バナーから友だち追加をお願いします!
特典として、Excelワークシート関数一覧(計22スライド)やExcelショートカットキー一覧(計25スライド)等をプレゼント!
ご参考になれば幸いですm(_ _)m
別ブックのデータを取り込み、整形・加工を行うことも、Power Query(パワークエリ)があれば、マクロ(VBA)要らずですね。
別ブックを扱う頻度が高い人は、ぜひマスターしてください!
ブログを参考にさせて頂いています。
サンプルファイル_PowerQueryデータ取得_ブックから.zip
がまだアップされていないようですので、アップロードをして頂けると助かります。
お手数をおかけしますが、よろしくお願いします。
沖田さん
コメントありがとうございます!失念しておりました・・・。
今しがたアップロードしましたので、お役立てくださいませ!
今後ともよろしくお願いいたしますm(__)m