[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『パワークエリで2つの列の条件でデータ抽出したい』(みーこ)
各ファイルのA列のデータは重複している場合があります。
パワークエリの重複削除機能を使用すると先の方のデータを残して重複側が削除されますが、B列に情報がある場合はそのデータを残してA列とB列のデータを一覧にしたい。
パワークエリの操作に何かを加えることで「希望」のような表の抽出は可能でしょうか?
各ファイル日々抽出されますが行は増減します。
ファイルA・ファイルB・ファイルC・・・・と沢山のファイルがあります。
各ファイル同じフォルダには入れていますが、実データは各ファイルとも多くの行があります。
ファイルA ファイルB ファイルC A列 B列 A列 B列 A列 B列 あ 1 あ 1 う 3 い 2 う 3 え 5 う え 5 か 7 え お き 8 お か く
「現状」の一覧 「希望」の一覧 A列 B列 A列 B列 あ 1 あ 1 い 2 い 2 う う 3 え え 5 お お か か 7 き 8 き 8 く く
「現状」はパワークエリの重複削除機能を使用することで再現できましたが、「希望」通りのデータにすることはできないでしょうか?
現状で行った方法:データタブ→データ取得→ファイルから→フォルダーから→(該当のフォルダー)→結合→A列選択して重複の削除→閉じて読み込む で現状の一覧にすることはできました
VBAでコードを書くことができないレベルです。
パワークエリに何かの操作を加えることでできないでしょうか?
ご教授の程よろしくお願いいたします。
< 使用 Excel:Microsoft365、使用 OS:Windows10 >
・A列を第一キーに昇順に、B列を第二キーに降順にソートしてから、 ・いったん Table.Bufferの処理を挟み(*) ・A列を選択したうえで「重複の削除」を実行すればよいと思われます。
(*)これをしないと、残る行を正確にコントロールできないようです。 Table.Distinctのヘルプを参照してください。
サンプル例です。(データの取得の部分は、既に実行しているものをそのまま使って下さい。これは手抜きの例です) let ソース = Excel.CurrentWorkbook(){[Name="テーブル1"]}[Content], 変更された型 = Table.TransformColumnTypes(ソース,{{"商品", type text}, {"金額", Int64.Type}}), 並べ替えられた行 = Table.Sort(変更された型,{{"商品", Order.Ascending}, {"金額", Order.Descending}}), tbl=Table.Buffer(並べ替えられた行), 削除された重複 = Table.Distinct(tbl, {"商品"}) in 削除された重複 (γ) 2023/01/26(木) 04:07:27
別案です データタブ→データ取得→ファイルから→フォルダーから→(該当のフォルダー)→結合→A列で選択してグループ化(操作は、B列の最大値)→閉じて読み込む
グループ化すると列の順序が変わることがあるので、読み込んだあとで、A列でソートしてください。 テーブルのオプション テーブルデザインタブの外部のテーブルデータ タブのプロパティで 列の並べ替えを・・・を保持するにチェックを入れておくと、 データを読み込んだタイミングでソートしてくれます (´・ω・`) 2023/01/26(木) 06:51:18
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.