Power Query には、Power クエリを作成してブックに読み込むためのいくつかの方法が用意されています。 [ クエリ オプション] ウィンドウで既定のクエリ読み込み設定を設定することもできます。
ヒントワークシート内のデータが Power Query によって整形されているかどうかを確認するには、データのセルを選択し、[クエリ コンテキスト] リボン タブが表示された場合は、データは Power Query から読み込まれています。
Excel への Power Query の統合について
現在いる環境を知る Power Query は、特にデータのインポート、接続の操作、ピボット テーブル、Excel テーブル、名前付き範囲の編集を行う場合に、Excel ユーザー インターフェイスにうまく統合されています。 混乱を避けるために、Excel または Power Query のどちらの環境を使用しているかを把握しておくことが重要です。
| 使い慣れた Excel ワークシート、リボン、グリッド | Power Query エディターのリボンとデータのプレビュー |
|---|---|
|
|
たとえば、Excel ワークシート内のデータの操作は、Power Query とは根本的に異なります。 さらに、Excel ワークシートに表示される接続データには、データを整形するための Power Query がバックグラウンドで動作している場合としない場合があります。 これは、Power Query からワークシートまたはデータ モデルにデータを読み込む場合にのみ発生します。
ワークシートのタブの名前を変更する ワークシートのタブがたくさんある場合は、特にワークシートのタブが多い場合は、わかりやすい名前を変更することをお勧めします。 データのワークシートと、Power Query エディターから読み込まれたワークシートの違いを明確にすることは特に重要です。 ワークシートが 2 つしかない場合で、1 つは Sheet1 という Excel テーブル、もう 1 つは Table1 という Excel テーブルをインポートして作成されたクエリが含まれているため、混乱してしまいがちです。 ワークシート タブの既定の名前は、よりわかりやすい名前に変更することをお勧めします。 たとえば、 Sheet1 の名前を DataTable に、 Table1 の名前を QueryTable に変更します。 これで、どのタブにデータがあり、どのタブにクエリがあるかが明確になりました。
クエリを作成する
インポートしたデータからクエリを作成することも、空のクエリを作成することもできます。
インポートしたデータからクエリを作成する
これは、クエリを作成する最も一般的な方法です。
- データをインポートします。 詳細については、「外部データ ソースからデータをインポートする」を参照してください。
- データのセルを選択し、[クエリ>編集] を選択します。
空のクエリを作成する
一から始めるのもいいかもしれません。 これを行うには 2 つの方法があります。
- [データ]>データの取得>その他のソースから>空白のクエリ] を選択します。
- [データ]>データの取得>起動 Power Query エディター] を選択します。
この時点で、Power Query M の数式言語をよく理解している場合は、手動で手順と数式を追加できます。
または 、[ホーム ] を選択し、[ 新しいクエリ] グループでコマンドを選択することもできます。 次のいずれかの操作を行います。
- [ 新しいソース ] を選択してデータ ソースを追加します。 このコマンドは、Excel リボンの Data>Get Data コマンドと同じです。
- [ 最近使ったソース ] を選択して、作業しているデータ ソースから選択します。 このコマンドは、Excel リボンの [データ>最近使ったソース ] コマンドと同じです。
- [ データの入力 ] を選択して手動でデータを入力します。 このコマンドを選択すると、外部データ ソースとは関係なく Power Query エディターを試すことができます。
クエリを読み込む
クエリが有効でエラーがなければ、ワークシートまたはデータ モデルに読み込むことができます。
Power Query エディターからクエリを読み込む
Power Query エディターで、次のいずれかの操作を行います。
ワークシートに読み込むには、[ホーム] >[閉じる] & [読み込み] >[読み込みを閉じる] & の順に選択します。
データ モデルに読み込むには、[ホーム] >[閉じる] & [読み込み] >[閉じる] & [読み込み先] の順に選択します。
[データのインポート] ダイアログ ボックスで、[このデータをデータ モデルに追加する] を選択します。
ヒント [ 読み込み先 ] コマンドが淡色表示または無効になることがあります。 これは、ブックで初めてクエリを作成するときに発生する可能性があります。 この場合は、[読み込み & 閉じる] を選択し、新しいワークシートで [データ>クエリ] & [接続]>[クエリ] タブの順に選択し、クエリを右クリックして、[読み込み先] を選択します。 または、Power Query エディター リボンで [クエリ>読み込み先] を選択します。
[クエリと接続] ウィンドウからクエリを読み込む
Excel では、クエリを別のワークシートまたはデータ モデルに読み込むことができます。
- Excel で、[データ>クエリ] & [接続] を選択し、[クエリ] タブを選択します。
- クエリの一覧でクエリを見つけ、クエリを右クリックして、[ 読み込み先] を選択します。 [データのインポート] ダイアログ ボックスが表示されます。
- データのインポート方法を決定し、[ OK] を選択します。 このダイアログ ボックスの使用方法の詳細については、疑問符 (?) を選択してください。
ワークシートからクエリを編集する
ワークシートに読み込まれたクエリを編集するには、いくつかの方法があります。
Excel ワークシートのデータからクエリを編集する
- クエリを編集するには、Power Query エディターから以前に読み込まれたクエリを見つけ、データ内のセルを選択して、[クエリ>編集] を選択します。
[クエリ] & [接続] ウィンドウからクエリを編集する
1 つのブックに多数のクエリがあり、1 つをすばやく検索したい場合には、[ クエリ & 接続 ] ウィンドウを使用すると便利な場合があります。
- Excel で、[データ>クエリ] & [接続] を選択し、[クエリ] タブを選択します。
- クエリの一覧で、クエリを見つけて右クリックし、[ 編集] を選択します。
[クエリ プロパティ] ダイアログ ボックスからクエリを編集する
- Excel で、[データ>データ & 接続]>[クエリ] タブの順に選択し、クエリを右クリックして [プロパティ] を選択し、[プロパティ] ダイアログ ボックスの [定義] タブを選択して、[クエリの編集] を選択します。
ヒントクエリのあるワークシートを操作している場合は、[データ>プロパティ] を選択し、[プロパティ] ダイアログ ボックスの [定義] タブを選択して、[クエリの編集] を選択します。
データ モデル内のテーブルのクエリを編集する
通常、データ モデルには、リレーションシップに配置された複数のテーブルが含まれます。 クエリをデータ モデルに読み込むには、[読み込み先] コマンドを使用して [データのインポート] ダイアログ ボックスを表示し、[このデータをデータ モードに追加する] チェック ボックスをオンにします。 データ モデルの詳細については、「 ブックのデータ モデルで使用されるデータ ソースを確認する」、「 Excel でデータ モデルを作成する」、および「 複数のテーブルを使用してピボットテーブルを作成する」を参照してください。
データ モデルを開くには、[ Power Pivot>Manage] を選択します。
Power Pivot ウィンドウの下部で、目的のテーブルのワークシート タブを選択します。
正しい表が表示されていることを確認します。 データ モデルには、多数のテーブルを含めることができます。
テーブルの名前をメモします。
Power Pivot ウィンドウを閉じるには、[ ファイル>閉じる] を選択します。 メモリの再利用に数秒かかる場合があります。
[ データ>接続] & [プロパティ>クエリ ] タブを選択し、クエリを右クリックして、[ 編集] を選択します。
Power Query エディターでの変更が完了したら、[ファイル]>[閉じる]& [読み込み] を選択します。
結果
ワークシート内のクエリとデータ モデル内のテーブルが更新されます。
クエリをデータ モデルに読み込むと異常に時間がかかる
クエリをデータ モデルに読み込むと、ワークシートに読み込むよりもはるかに時間がかかることに気付いた場合は、Power Query の手順をチェックして、contains 演算子を使用してテキスト列またはリスト構造列をフィルター処理しているかどうかを確認してください。 この操作により、Excel は各行のデータ セット全体を再度列挙します。 さらに、Excel ではマルチスレッド実行を効果的に使用できません。 回避策として、 Equals や Begins With などの別の演算子を使用してみてください。
Microsoft はこの問題を認識しており、調査中です。
クエリの読み込みオプションを設定する
Power Query を読み込むことができます。
ワークシートに移動します。 Power Query エディターで、[ホーム] >[ロードを閉じる] & [ロードを閉じる] >& [ロードを閉じる] を選択します。
データ モデルに移行します。 Power Query エディターで、[ホーム]>[閉じる]& [読み込み]>[閉じる]& [LoadTo] を選択します。
既定では、Power Query は 1 つのクエリを読み込むときにクエリを新しいワークシートに読み込み、複数のクエリを同時にデータ モデルに読み込みます。 すべてのブックの既定の動作を変更することも、現在のブックの既定の動作を変更することもできます。 これらのオプションを設定すると、Power Query はワークシートのクエリ結果やデータ モデルのデータと注釈を変更しません。
[閉じる]& [読み込み先] を選択した後に表示される [インポート] ダイアログ ボックスを使用して、クエリの既定の設定を動的にオーバーライドすることもできます。
すべてのブックに適用されるグローバル設定
Power Query エディターで、[ファイル] >[オプションと設定]> [クエリ オプション] を選択します。
[ クエリ オプション] ダイアログ ボックスの左側にある [グローバル ] セクションで、[ データの読み込み] を選択します。
[ Default Query Load Settings ] セクションで、次の操作を行います。
- [ 標準荷重設定を使用する] を選択します。
- [ カスタムの既定の読み込み設定を指定する] を選択し、[ ワークシートに読み込む] または [データ モデルに読み込む] をオンまたはオフにします。
ヒント ダイアログ ボックスの下部にある [既定値に戻す ] を選択すると、便利に既定の設定に戻すことができます。
現在のブックにのみ適用されるブック設定
[ クエリ オプション] ダイアログ ボックスの左側にある [現在のブック ] セクションで、[ データの読み込み] を選択します。
次のいずれか 1 つまたは複数の操作を行います。
[ 型検出] で、[ 非構造化ソースの列タイプとヘッダーを検出する] をオンまたはオフにします。
既定の動作では、それらを検出します。 データを自分で整形する場合は、このオプションをオフにします。
初めてデータ モデルに追加するときに、[ リレーションシップ] で [ テーブル間のリレーションシップを作成する] をオンまたはオフにします。
データ モデルに読み込む前の既定の動作では、リレーショナル データベースの外部キーなど、テーブル間の既存のリレーションシップを検索し、データと共にインポートします。 自分で操作する場合は、このオプションをオフにします。[ リレーションシップ] で、[ データ モデルに読み込まれたクエリを更新するときにリレーションシップを更新する] をオンまたはオフにします。
既定の動作では、リレーションシップは更新されません。 データ モデルに既に読み込まれているクエリを更新すると、Power Query はリレーショナル データベース内の外部キーなどのテーブル間の既存のリレーションシップを見つけて更新します。 これにより、データのインポート後に手動で作成されたリレーションシップが削除されたり、新しいリレーションシップが導入されたりする場合があります。 ただし、これを行う場合は、オプションを選択します。
[ バックグラウンド データ] で、[ バックグラウンドでのデータ プレビューのダウンロードを許可する] をオンまたはオフにします。
既定の動作では、バックグラウンドでデータ プレビューをダウンロードします。 すべてのデータをすぐに表示する場合は、このオプションをオフにします。