タグ別アーカイブ: コピー

パワークエリエディターで行コピーを行う方法

今回は、通常は行列単位で一括処理を行うパワークエリで「行コピー」を行う方法を解説します

行コピーを行うのに「M言語」が出てきますが、M言語の概念に触れるのにいい題材だと思います

ところで、

空のクエリ波括弧:{}を使用したらどのようになるでしょう?

ちなみに、空のクエリはここから起動できます

*データタブ➡データの取得➡その他のデータソースから➡空のクエリ

では、

試しに、下の画像のように空のクエリの数式タブに{2020,2021}と入力してみます

すると、上の画像のように2020と2021の値から構成されるリストが作成されます

このリストを作成する仕組みを行コピーにも活用します

行コピー

では、実際に行コピーをしてみたいと思います

上のデータがエディタに表示されている状態からカスタム列・作成画面をクリックします

そして、先ほどの波括弧:{2020,2021}を入力します

すると、2020と2021の2つの値から構成されるリストが含まれた列が新たに作成されます

次に、下の画像にて黄色く印を付けた箇所をクリックしてリストを展開します

すると、2020と2021の値に対応するように行コピーが作成されます

もし、波括弧の中味を「2020と2021」でなく「2020,2021,2022」とすれば1行でなく2行がコピーされます

<まとめ>

今回は波括弧:{}を使用してリストを作成した上で、行コピーを行いました

とても簡単な内容ですが、パワークエリをサポートするM言語の仕組みに触れる上ではとてもいい内容です

特に、波括弧の使用の仕方に慣れるだけでもM言語の根幹に触れることができます!

ぜひ実際に手を動かして試してみてください


にほんブログ村

クエリの複製、参照、そしてコピーとの違い~

 クエリを右クリックしたときに出てくる「複製」と「参照」そして「コピー」、この3つは何が違うのか?と不思議に思ったことはありませんか?

 このブログでは、中級編/クエリのマージの解説の中で「参照」の方は登場しました

では、複製はどのような時に使用するのでしょうか?

そしてコピーは?

上の3つはどちらもある種「既存クエリ」のコピーです

但し、この3つには明確な違いがあります

 この3つの違いをきちんと理解しておくと「既存クエリ」の活用の仕方がかなり効率的になります!

 この「複製」と「参照」の違いを理解し易くするため、次の画像のデータから「元クエリ」*という名前のクエリを事前に作成します

 *コピーは別のクエリで解説します

元データ

 「元クエリ」はPower Queryエディタ(以降エディタ)にて、次の画像のように「トラック」でフィルターをかけています

元クエリ

ですから、適用したステップは次の画像のように3つになります

適用したステップ

ではこの「元クエリ」を元にして「複製」と「参照」の違いを解説します

コピーについては、前述のように別のクエリで解説します

複製

では「元クエリ」の上で右クリックして「複製」を行います

元クエリ

開いたエディタで「適用したステップ」を確認します

適用したステップ

適用したステップは3つあり、「元クエリ」と変わりません

 ですので、上の画像の最後のステップを修正して、フィルターを「トラック」から「軽自動車」に変えることもできます

行のフィルター

元のクエリを一部変えるだけで活用したい場合には「複製」するのが便利です

参照

では今度は、参照を行います

元クエリ

開いたエディタの適用したステップを確認します

適用したステップ

上の画像のように適用したステップには最初のステップだけです

つまり、データソースとして参照元の最終ステップを参照しています

上の図は参照したクエリですが、既に「トラック」でフィルターされています

後、数式バーにははっきり参照元が「元クエリ」となっています

既存のクエリをそのまま活用していきたい場合には「参照」が便利です

コピー

最後にコピーについて解説します

コピーについては、違うクエリで解説します

 上の画像の「売上集計」クエリは、「商品台帳クエリ」「売上台帳クエリ」などのクエリと依存関係(他のクエリをマージ)になっています

 他のクエリと依存関係になっているクエリをコピーして貼り付けると、依存関係にあるクエリも下の図のように一緒にコピーされます

依存関係にあるクエリがなければ、前述の複製と機能は同じです

<まとめ>

今回は、「複製」と「参照」そして「コピー」の違いについて解説しました

両方ともクエリをある種「コピー」するという点では一緒です

違うのはコピーされるステップです

複製 最後のステップまでコピー

参照 ⇒参照元の最終ステップをデータソースとして参照 

コピー⇒依存関係(マージされている)にあるクエリがあれば、そちらもコピー

 この3つの違いを意識しながら、既存クエリを活用する目的にあわせてうまく使い分けしましょう!

今回は以上です!

最後までこの記事をお読み下さり、誠にありがとうございました!

にほんブログ村 資格ブログ ビジネススキルへ
にほんブログ村 IT技術ブログ VBAへ


にほんブログ村

クエリのコピー・バックアップ・削除他~上級編16回

今回は、各種クエリに関する処理について解説します

解説する処理内容は全部で5つになります

1.クエリを別ファイルにコピー

2.クエリのバックアップ、復元

3.クエリの数が多い場合のグループ化

4.クエリの一括削除

5.依存関係

最後依存関係は前述の1.~4.全てに関わります

この回で解説する依存関係とは、データソースやクエリのマージ(結合)のことになります

 順序は逆になりますが、今回の事例として使用するファイルを解説する意味もありますので、5.依存関係から解説を行います

5.依存関係

今回使用するファイルは、過去の記事でも使用したファイルです

元データ

 この時には、商品台帳と売上台帳をマージして「売上金額クエリ」を作成し、売上金額を計算しました

では早速、「売上金額クエリ」の依存関係を見てみます

解説対象のクエリ

 まず「売上金額クエリ」の上で右クリックして、Power Queryエディタ(以降、エディタ)を開きます

クエリの編集

エディタが開いたら、表示タブをクリックします

クエリの依存関係

すると、上の画像右の「クエリの依存関係」をクリックできるようになります

下の画像が、「クエリの依存関係」をクリックした時に開く画面です

依存関係

上の図を見ると「売上金額クエリ」は①商品台帳クエリと②売上台帳クエリとマージしており、この2つのクエリに依存しているのが分かります

①と②についても、依存の状況は分かります

①商品台帳クエリ

このクエリは「e:\パワークエリ講座・・・」のフォルダにあるファイルからデータを取得しているのが分かります

依存関係

この 「e:\パワークエリ講座・・・」の上にカーソルを置くと更に詳細が分かります

②売上台帳クエリ

 売上台帳クエリは①の商品台帳クエリと違い、売上金額クエリが存在するファイル内からデータを取得していることが分かります

 上の関係図にはないですが、売上台帳クエリは現在ブック内の「売上台帳テーブル」からデータを取得しています

 ちなみに上の図に、「読み込まれていません」とありますが、こちらはクエリの読込先が「接続のみ」になっていることを表します

 今回、事例とするクエリのことも解説したところで、前述の1.~4.についても解説を行って行きます

1.クエリを別ファイルにコピー

まず、商品台帳クエリを別ファイルにコピーします

商品台帳クエリ

商品台帳クエリ上で右クリックし、「コピー」をクリックします

クエリのコピー

そして、別ファイルで貼り付けます

クエリの貼り付け

では、他2つのクエリに依存している「売上金額クエリ」を別ファイルにコピーしてみます

すると下の図の通り、依存している2つのクエリも同時にコピーされます

売上台帳クエリは「現在のブック」内のテーブルを取得元にしています

別ファイルには、もちろん「売上台帳クエリ」の取得元になるテーブルはありませんので、売上台帳クエリはエラーになります

そして、「売上台帳クエリ」に依存している「売上金額クエリ」もエラーになります

2.クエリのバックアップ、復元

では冒頭で紹介した、「事例として使用するファイル内」にある「商品台帳クエリ」をバックアップします

次の図の「接続ファイルのエクスポート」をクリックします

するとクエリのバックアップ先を指定する画面が出ますので、そちらに保存処理を行います

バックアップの復元については、以下の画面で行います

こちらは、4.のクエリの一括削除を行った後に、追加で解説を行います

3.クエリの数が多い場合のグループ化

では、冒頭の事例として解説したファイルに戻ります

Ctrlキーを押しながら「商品台帳クエリ」「売上台帳クエリ」を選択します

そして、右クリックすると「グループ作成」を指定できます

作成するグループには「名前」をつけます

名前をOKボタンを押すと、「作成したグループ名」のグループと、それ以外のグループに分かれます

作成したグループを解除する時には、下の図の「グループ解除」をクリックします

クエリをグループ間で移動させたい時には、移動させるクエリを右クリックし、次の画像の黄色の箇所をクリックします

4.クエリの一括削除

引き続き3.で使用したファイルにて、クエリの削除を行います

「商品台帳クエリ」上にカーソルを置いて右クリックし、更に削除をクリックします

すると、「商品台帳クエリ」は「売上金額クエリ」に依存されているため、下の画像のようなメッセージが出て削除ができません

一方で、Ctrlキーを使用して、全てのクエリを指定して削除をすると「依存関係」自体も削除されるため、一括で削除されます

なおクエリが削除されて後も、クエリからシートに読込まれていたテーブルデータは削除されません

ちなみにCtrlキーを使用する方法の他にも、一括でクエリを削除する方法があります

まず「ファイルタブ」をクリックした後、情報タブをクリックします

更に「問題のチェック」の右下にある▼マークをクリックした後に、「ドキュメント検査」をクリックします

次に「ドキュメントの検査」が開くので、画面下の「検査」ボタンをクリックします

クエリがファイル内にあると、下の図のように「カスタムXMLデータが見つかりました。」とメッセージが出ます

「すべて削除」をクリックすると、すべてのクエリがファイルから削除されます

ファイル内のクエリが全て削除されたところで、2.でバックアップを取ったクエリを復元してみます

クエリの復元は、前述のようにデータタブにある「既存の接続」から行います

「既存の接続」をクリックした後に開いた画面の左下に「参照」があります

上の図の「参照」をクリックすると、バックアップしたクエリを指定できるようになります

クエリを復元する時には、下の図のように「データのインポート」画面が開きますので、こちらで読込先を指定します

<まとめ>

今回は、クエリの「依存関係」を含め、全部で5つの処理を解説しました

1.クエリを別ファイルにコピー

2.クエリのバックアップ、復元

3.クエリの数が多い場合のグループ化

4.クエリの一括削除

5.依存関係

 1.~4.の処理を行うに当たっては、必ず5.の「依存関係」は事前に確認しておきましょう

 尚、1.のクエリのコピーについては、過去の記事で紹介した「複製」とはきちんと区別しておきましょう

クエリの複製の場合には、他ファイルにはコピーはできません

そして、複製の場合には1.のコピーとは違い「依存関係」があるクエリはコピーされません

 ちなみに、1.のクエリのコピーした内容をテキストボックスに貼り付けると、詳細エディタの内容がコピーされます

今回は以上です

次回は、重要なデータ成型の仕方の一つ「文字列の抽出」について解説します

長文に最後までお付き合い頂き誠にありがとうございました

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村 IT技術ブログ VBAへ

にほんブログ村