タグ別アーカイブ: Power Query Editor

【Power Query豆知識】ちょっとしたM関数の書き方の工夫でステップ数を削減する方法

どうしてもクエリが長くなってしまい、後で見返しても内容がよくわからず困っているという声をよく聞きます

今回は、M関数の書き方を工夫してステップ数を削減する「ちょいテク」を紹介します

カスタム列の追加時

カスタム関数を追加した後に、形式を行うことがあります

下の画像では、上の画像のランク列をテキスト形式に変更しています

このやり方だと、形式変更のステップが追加されてしまいます

このケースの場合は、カスタム列を作成したステップに戻り、数式バーに一文を足します

足した一文はこちらです

,Text.Type

この一文を足すだけで、カスタム列の追加と形式変更(テキスト形式への変更)が同一ステップで行えます

では、整数形式に直す時にはどうコードを書くのか?

いちいちすべてコードを覚えておく必要はありません

下の画像は整数形式に直した時の数式バーの記述です

一度、整数形式に変更するステップを追加した後に「コードを把握」し、カスタム列の追加ステップを修正した後、形式変更のステップを削除すればいいのです

列の削除

ある列を削除した後に、別の列を削除したくなることはよくあります

この時は、最初に列を削除したステップに、2度目の内容を追加します

下の画像は1度目に列を削除した時の数式バーの内容です

こちらの波括弧:{}内に2度目に削除した列名を追加します

これで、2度目に列を削除したステップは不要となります

列名に空欄が入っている時は注意が必要です

この時は列名をコピーした方が早いです

<まとめ>

今回は、ちょっとした長いクエリを短くする工夫を紹介しました

今回の内容で一気にステップ数が減るわけではありません

ただ地道に工夫を積み上げると成果には確実につながりますので、ぜひ今回のような工夫を積み上げるようにしましょう

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

にほんブログ村

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

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

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

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

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

そしてコピーは?

上の3つはどちらもある種、一度作成してある「既存クエリ」のコピーです

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

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

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

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

元データ

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

元クエリ

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

適用したステップ

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

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

目次

1.複製

2.参照

3.コピー

<まとめ>

1.複製

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

元クエリ

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

適用したステップ

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

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

行のフィルター

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

続きを読む クエリの複製、参照、そしてコピーとの違い~

Power Queryって何??~日付を月や四半期単位に変換~

こんにちは、Excellent仕事術のガッツ鶴岡(@atsushi1039)です

 Power Queryを知らない時には、様々な日付関数を使用して日付の変換を行っていました

例:「2021/01/27」⇒Year関数⇒「2021」⇒Month関数⇒「1」

 Power Queryエディタでは、直感的なクリック操作でこれらの処理は一括で行えるので覚えておくととても便利です!

更に、Power Queryエディタでは「四半期単位」に変換できる点にも注目です!

使う画面は変換タブの「日付と時刻の列」になります      

目次

1.年への変換

2.月への変換

3.四半期

1.年への変換

日付の「年」への変換(例:2019/09/01⇒「2019」)は次の画像の「年」をクリックすれば行えます

次にGIF画像のように列ごと一括で変換されます

続きを読む Power Queryって何??~日付を月や四半期単位に変換~

Power Queryって何??9~Webページからデータ取得~

 今回は、Power Queryを使用してWebスクレイピングを行う方法について解説します。この方法を習得すれば、Webページの内容をエクセルシートに転記する手間が省けるようになります!

以前、Power Queryはスマホと同じだという記事を書きました

スマホではネットで好きなレストランを検索、つまり、レストランの情報を取得し、そしてスマホからそのまま予約の電話をすることができます

 Power Queryも様々な箇所からデータを取得して、そのまま取得したデータを活用できます

実は、Power QueryではWebページの内容も取得できてしまうんです!

Webページに接続して、直接データを取得出来たら、次のようなWebページにある情報をエクセルシートに転記するような作業を削減できます!

・他社のIR情報の取得

・株価の取得

・その他のニュース記事

今回はある会社のIRページからPower Queryを使い、月次の数字を エクセルシート上に直接読み込んでみましょう!

Power Queryでは取得したいWebページのURLを入力しさえすれば、Webページのデータが取得できてしまいます

皆さんも馴染みのあるHPで試してみてください

今回の解説には、次ページを使用します

Webデータ/サンプル

解説に使うページを確認したところで、詳細な解説をはじめます

では、まず最初にエクセル画面の以下の箇所をクリックします

取得画面

すると、HPのURLを入力できるようになります

URL指定

上の画面でOKボタンを押すと、ナビゲーター画面が立ち上がります

ナビゲーター画面

ナビゲーター画面に「10月月次データ」というテキストが表示されるので、そのテキストをクリックするとHP上の表が画面上に再現されます

HPから表を読み込めそうなことが確認できたので、このまま処理をすすめます

画面下で読みこみ先ボタンをクリックします

データのインポート画面が開くので、2か所指定します

・どのように表示するか⇒テーブル

・データを返す先⇒新規ワークシート

OKボタンを押し、実際に読み込まれたデータはこんな状態でした

見出しが2行だったのが1行になってしまっています

Power Queryでは必ずしも完璧に読み込めるということではなさそうです

ですが、一から手でHPから転記するよりは断然早いですよね!

Power Queryを覚える価値はありそうです!

今回はPower Queryを使用してHPのデータをエクセルシートに読込ましたが、前回はPDFファイルからも読み込んでいます

ぜひそちらも参照してみてください

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


にほんブログ村

変換した列の追加~中級編10回目~

こんにちは、Excellent仕事術ガッツ鶴岡です

前回、案内したようにエディター画面での変換処理について解説します
エクセルはあくまで表計算ソフトであり、Accessのような大量のデータを扱うのに適したデータベースソフトではありません
Power Queryのエディター画面にある機能を使いこなせば、データベースソフトと同じ様に一括で変換処理が行えます
今回は、エディター画面の「列の追加」タブにある機能の一部を解説します

エディター画面
列の追加画面

解説に使うデータは、初級講座1回目で使用したデータを使います

解説用データ
      販売データ

次から解説する、1~3のステップを通じて、既存の表の横に「連番」と「部門コード」「販売金額」の3列から構成される表を追加します

列追加
連番及び条件付き列追加

.連番追加(インデックス)

取得したデータに、エディター画面で連番を付けます

①エディター画面を開く

まず、既存の表からデータを取得してエディター画面を開きます

取得データ
取得データ

⓶インデックス列

エディター画面が開いたら「列の追加」タブをクリックし、「インデックス列」の横にある▼をクリックします

インデックス列の付け方
インデックス列

ここで、連番の付け方を選ぶことができます

 ・0から始め、増分を1にする

 ・1から始め、増分を1にする

 ・開始番号と増分をカスタマイズする

ここでは1からを選択します

インデックス列
連番

2.条件列

この条件列は従来のエクセルではIF関数に相当するものです

IF関数とは違い、エディタ―画面では設定条件に従い、一括で変換します

それに、IF関数ほど設定の仕方は複雑ではありません

まず、「条件列」をクリックして、設定画面を開きましょう

条件列の追加

新たに開いた「条件列の追加」画面では、以下の6つを設定します

 ①追加される列名

 ②~④設定条件

 ⑤設定条件に合致する場合の出力結果

 ⑥設定条件に合致しない場合の出力結果

今回は、部門名が東京の場合は「T」大阪の場合、つまり東京以外の場合は「O」を出力するので、以下の画面のように設定します

条件設定
条件設定画面

3.読込処理

①列の削除

今回出力する表は以下の様になるので、無駄な列は削除します

出力する表

削除は「削除する列」にカーソルを置いて右クリック⇒削除、の順で行います

列が隣合っている列を一気に削除する場合は、Shiftキーを押しながら削除対象列を指定してください

複数列指定
列削除

②列移動

新たに追加した2列を、まとめて移動します

列移動
列移動

③読込先の指定

今回は、既存シートにエディターで操作したデータを読み込みます

読込

ホームタブで「閉じて次に読み込み」をクリックした後、データインポート画面にて読込位置を指定してください

「表示」はテーブル、「データを返す先」は既存のワークシートを指定します

データのインポート
データのインポート

<まとめ>

今回は、エディター画面で2種類の列を追加する方法を解説しました

1つは連番の追加、2つ目は従来のエクセルで言えばIF関数に相当する条件列の追加です

他にもエディター画面での列削除や列移動についても解説を行いました

今回の解説を通じて、エディター画面がスマホと同じ様に、直感的に操作できる利点を感じて頂けたら嬉しいです!

次回はPower Queryを使用して集計上手になるため、グループ化について解説します

それではガッツで頑張りましょう!

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


にほんブログ村

Power Queryでエクセル操作はどう変わる?~初級講座1回目

こんにちは、Excellent仕事術ガッツ鶴岡です

 読者の皆さんはエクセルのPower Queryと聞いて、具体的に使用するイメージが湧きますか?

 エクセルが誕生して20年以上も経ちますが、海外ではPower Queryはエクセルが生んだ機能の中で最高機能とも言われています

 ところが、日本ではPower Queryはどういう風に使うものなのか?何ができるのかについては、まだあまり知られていません

まずは、このPower Queryはどんな方におススメの機能なのか?について解説したいと思います

Power Queryは、こんな方に特におススメです

・日常的にエクセルで大量のファイル、シートをガッツで扱っている

・Access、関数、VBAを覚えてエクセル作業を効率化したいが、時間がな

 Power Queryはスマホのような直感的なクリック操作で、データをブロック遊びのように結合したり、分解したりできます

 ぜひ、上記のような悩みを持つ方にはこの記事を最後まで読んで頂きたいと存じます!

もし、時間が無い方はぜひ、下の動画をのぞいてみてください!

 この回では、Power Queryの使用イメージついて、読者の皆さんが日常的に使用しているものを例にしながら丁寧に解説していきたいと思います

さて、読者の皆さんは、ガラケーを使ったことはあるでしょうか?

筆者はガラケーが出て来た時点で、既に衝撃を受けていました

以前、使っていたのは固定電話だけでした

 ガラケーが登場した時には、ついに「電話を持ち歩き出来る」新しい時代が来たな、と思いました

そして、ガラケーからスマホに変えたときに、更に大きな衝撃を受けました。

 Power Queryを初めて使った時のイメージは、スマホに変えた時のイメージに近いです

 さて、ここでPower Queryをイメージしやすくする為に「電話帳でレストランを探して、ガラケーで電話予約」するシーンを思い浮かべてみましょう!

そして「スマホでレストランを検索して、スマホで電話予約」するシーンも思い浮かべてみて両者を比較しましょう!

この2つにはどんな違いがありますでしょうか?

この2つの違いを意識しながら、Power Queryの使用イメージの解説を読み進めていってください!

データ取得

さきほどのレストランを予約するシーンでは、ガラケーで電話をする場合は、電話帳を見ながら電話をしていました

つまり、ガラケーの中にはレストランの電話番号というデータはありません。

一方、スマホの場合もスマホの中に電話番号というデータが無いのはガラケーと一緒です

但し、ネットから電話番号を取得しています。

この「データ取得」が従来のエクセル操作方法とPower Queryの違いの一つです

Power Queryでは、下の画像の「データの取得」を通じて、様々な箇所からデータを取得します

データの取得画面

取得できるのはⅰ)シートデータ、ⅱ)ファイルデータ、ⅲ)フォルダ内のファイルデータなどのエクセルデータに加え、なんとⅳ)PDFファイル内やⅴ)Webページ内のデータも取得できるのです!

ここで次の疑問を持つ人もいるとおもいます

これらの取得したデータはファイル内に保持することになるのか?

この点ですが、Power Queryでデータを取得すると「クエリ」というものが画面右にできます

クエリー

このクエリーは、スマホ内のものに例えるなら「ブックマーク」だと思ってください

ブックマーク

このクエリーをクリックすれば、一度取得したデータに再アクセスできます

変換・読込

ガラケーではレストランに電話をするときに電話番号を0、3、4・・・とひとつずつ打ち込んでいました。

一方、スマホでは、Webサイト内の電話番号のマークをクリックすれば、スマホに電話番号がセットされます。

つまり、Webサイトを通じて取得した電話番号を、スマホでそのまま電話できるように変換しています

そして、変換したデータをスマホ内の電話画面に読込先を変更しているのです

Power Queryでは、取得したデータはPower Queryエディター(以降、エディタ)で様々な変換処理を行うことができます

Power Queryエディター

以下は、Power Queryエディター内・変換処理の1例です

①複数のクエリーの組み合わせ

こちらは、VLOOKUP関数の処理に相当します

複数のテーブルデータを、クリック操作のみでブロックのように結合します

 下のGIF画像では、「売上結果」というクエリと「商品台帳」というクエリを結合しています

➁計算処理(四則演算処理

下のGIF画像では、エディタ内で「販売単価」と「販売個数の合計」の列を選択乗算をクリック のみで販売金額を一括で算出しています

 そして、変換したデータは必要に応じて、様々な箇所、様々な方法で読み込むことができます

データのインポート

①テーブル

テーブルデータとして既存シートの中や、新規シートに表示することができます

➁ピボットテーブル

変換データをそのまま、ピボットテーブルにすることもできます

③接続の作成のみ

取得したデータをシート上に「読込まない」「表示しない」という方法を選択することができます

ここがPower Queryの使い方の大きなポイントの一つです

ところで、エクセルを使用していて、ファイルが重くなって困った事はありませんか?

エクセルシートに表示されているデータは、あくまで表示されているだけであって、表示されている箇所にデータ自体が存在するわけではありません

データはエクセルシートとは別の箇所に保管されています

そのため、シート上に他の箇所にあるデータを表示する際、PCに負担をかけてしまい、動作が重たくなるのです

表示行数が制限内でも、表示行数が多くなればファイルの動きも重くなります

そんな悩みを解決するのが「接続の作成のみ」です

表示しないクエリーを作成しておいて、前述の変換処理、①複数のクエリーの組み合わせ により、必要なデータだけ抜き出して表示する、もしくは利用するということができます

表示しないクエリーを利用することで、エクセルの処理を格段にスピードアップさせることができます!

<まとめ>

 今回は、Power Queryでは操作の仕方がどう変わるかについて、スマホを例えに使用して操作のイメージを解説しました

スマホはネットの情報をそのまま利用できます

 Power Queryでも、スマホと同様に「シート上のデータ」や「他のファイルのデータ」を取得し、そのまま結合・変換して直接利用することができます

 そして、読込先を「接続の作成のみ」に指定することで、ファイルを重たくしないように工夫することもできます。

 さらに、今回ご紹介できなかったPower Queryの魅力の一つは、スマホのように「直感的なクリック操作」に使用できることです。

 次回からはイメージだけでなく、実際に使用してみることにより、Power Queryの「直観的な操作」に触れてみましょう!

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

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

にほんブログ村