Power Query 基礎
「エクセルの複数ファイルを読み込んで縦結合するクエリ」については、既に色んなところに記事や動画がアップされているので、いちいち書かなくてもいいかなと思っていたんですけど、先日質問掲示板の質問で紹介しようとしてネットを検索してみると、意外に…
パワークエリ便利ですよね。ただ使っている内に、「セルの値を変数に使えたら便利なのに」と考えるようになるかもしれません。セル値をパラメータ(変数)として使う方法はいくつかありますが、単純にはクエリとして読み込めばいいだけなので、手順さえ覚え…
多分一番要望として多いからだと思うんですが、複数のファイルを一括で読み込むクエリの質問が増えてきています。 ただ、ヘルパークエリどころかパワークエリがどんなものかすら、よくわからないまま使っている人が多い印象です。 どうもネットを検索してみ…
今更なんですが、結構この説明をするのに時間を取られることがありまして…… 何もない状態から「空のクエリ」を作る方法を下記にまとめています。 エクセル上(ブック)からクエリを作成する方法 Power Queryエディタからクエリを作成する方法1 Power Queryエ…
慣れないと混乱すると思いますので、2つのリストを使って比較抽出する方法をまとめておきます。 「A」と「B」のリストがあるものとして、 AとBのすべて = List.Distinct(A & B) もしくは = List.Union({A, B}) AとBで重複するものだけ = List.Intersect…
今回は「複数のブックの複数のシートを結合して読み込む」クエリの作り方を説明します。ただし、このクエリはマウス操作だけではできません。Power Query エディタを開いて編集する必要があります。 「複数ブックを読み込んで縦に結合する」とか「複数シート…
Power Queryで開始日から終了日までの連続している日付リストを作る場合、多分 List.Datesを使んじゃないでしょうか。 = List.Dates( 開始日, Duration.Days(終了日-開始日)+1, #duration(1, 0, 0, 0) ) learn.microsoft.com もちろんこれでいいんですけど、…
表計算の世界で、同じ形式の表をシート単位で分けてしまうのは、きっぱりと悪手です。ところが、Excelユーザーの大半がこれをやってしまいます。 例えば、A列に「名前」、B列に「値」が入力されている表が「Sheet1」から「Sheet10」まで並んでいるものとしま…
クエリを読み込んだ出力結果を、テーブルの行数固定で抽出したいことはないでしょうか。出力用の書式にクエリから直接データを書き出すのはあまりお勧めではないんですが、ここは「なんでもエクセル」なので考えるだけ考えてみます。 テーブル1は読み込み済…
今回は「行のグループ化」のその4です。その3はグループ化の際に、「区切り文字を使って1つの文字列にまとめる」方法を紹介しました。今回は個別に横に並べたい時に、どうすればいいか考えてみましょう。 これまたグループ化だけでは完結しないので、多少…
今回は「行のグループ化」のその3です。その2はピボットテーブルではできない「個別の行数のカウント」を取り上げましたが、今回は機能に用意されていないことをやってみましょう。 このように区分(グループ)ごとに品目を取りまとめる方法です。これは、…
前回これで最後と書いた癖に、もう一つ追加します。 列のピボットで作成したマトリクス表に、「集計行」を追加したい時はどうすればいいでしょうか。 「テーブルの最下行に1行追加ってどうやるの?」と悩んだ方は、Power Queryの便利な機能を一つ忘れていま…
Excelで少しだけ困るのが、「重複を省いて件数をカウントしたい」時です。ダブっているものを1つとして計算したい時、ピボットテーブルでは単純に集計できません(データモデルに追加すれば一応できます)。 「田中太郎:3」、「鈴木一郎:2」になってくれ…
引き続き「列のピボット」です。前回は縦軸用の番号列の作り方をやりましたが、今回はn行一組のデータを、列のピボットを使って組み替えてみます。 n行(画像だと4行)で一組のデータ(もちろんデタラメ)があるとして、 これを1行ずつのデータに組み換…
前回の続きです。そっちでもちらと書きましたが、列のピボットを実行する時には、必ず縦横方向の軸となる値が必要になります。 この画像の場合だと、テーブル1には横軸となる「班」列はあるものの、テーブル2の「連番」を構成する縦軸用の列がありません。こ…
今回は「列のピボット」を紹介します。Excelでいうピボットテーブル的な集計がしたい時に使う機能で、要は「列のピボット解除」の逆パターンになります。よく使う機能なんですが、実のところ集計に使われることは少ないかと思います。 左表の「属性」列を横…
これ単独でページ作るのもどうかと思うけど、クエリを作る過程でインデックス列(連番列)があると後々の計算の都合がいい場面が多々ある。実際マウス操作で行う場合、これなしでは先に進めない処理がいくつもある。グループ別に組み換えする時とか。 その連…
名前だけでは分かりにくいんですが、クエリで何かを集計する時は「グループ化」を使います。ただ集計するだけではなく、計算の負担を減らす目的でも利用される機能なので、是非とも覚えていただきたいと思います。 Power Queryでよく使う機能といったら、「…
マトリクス表(縦横配置の一覧表)を1列1情報の形に組み替えするには、クエリの「列のピボット解除」がとにかく便利です。操作も簡単なので、クエリを使うならここだけは覚えておきたいところです。 テーブルからクエリを作成する 列のピボット解除を実行 …
そもそも「クエリのマージって何」という人もいるはずなので書いておきますが、2つの表の対象となる列を指定して1つに結合(マージ)することです。よりエクセル的に説明するなら「VLOOKUP関数で別の表のデータをひっぱってくること」です。 パワークエリ…
パワークエリで、論理値(Logical型の「true」「false」)を数値に変換するのってどうやるんかなと思って色々試していました。ワークシート上の数式なら「(A1="あ")*(B1="A")」みたいなことが簡単にできるのに論理演算はできないみたいです。 だめなやつ 計…
[データの取得]→[ファイルから]→[Excel ブックから]でファイルを指定した場合、ブックの中でシートが分かれていると、シートの数だけクエリを作らないとといけなくなります。これをマージしようとすると、更にクエリの追加も必要です。 もしシートが何…