【PowerQuery】リストデータを活用して値を置き換える方法

値を除外するために1つずつ「値の置換」をしていくのは非常に手間がかかると思います。
今回は置き換えリストデータを活用して値を置き換える方法を2つご紹介いたします。
AI・Microsoft 365 活用を業務改善につなげたい企業向けに、研修・導入支援・活用サポートを行っています。
「どんなことを依頼できる?」「実際の活用事例は?」という方は、ぜひ無料資料をご覧ください。
\ 業務効率化・補助金情報をお届け/
\ 活用事例も掲載しています /
1.置き換えリストを活用した空白置換方法
事前準備
空白に置き換えるリストをExcel上で作成します。

手順
データ・置き換えデータをExcelのデータタブ > データの取得 からそれぞれ読み込みます。
置き換えリストクエリを選択 > 変換タブ > リストに変換 をクリック
1行目のデータに列名がある場合、ホームタブ > 1行目をヘッダーとして使用 を行ってください。

置き換えを行うクエリを選択 > fxボタンをクリック > 下記コードを入力
コードの解説画像を参考に、色のついた箇所を適宜変更してください。
= List.Accumulate(置き換えリスト, 変更された型, (state, current) =>
Table.ReplaceValue(state, current, "", Replacer.ReplaceText, {"商品名"}))

解説

コードは下記のような内容になっています。
List.Accumulate(リスト , 初期値 , (初期値のテーブルの状態 , 置換リストの要素) => 処理
リスト(置換リスト)の各要素を順番に処理
Tabel.ReplaceValue(初期値のテーブルの状態 , 検索値 , 置き換える値 , 置き換え方法 , 列リスト)
テーブル内の特定の列からリストの内容を置き換える
2.置き換え前・置き換え後のデータで値を置き換える方法
事前準備
置き換え前・後のリストをExcel上で作成します。
Ctrl + T もしくは 挿入タブ > テーブルでテーブル形式にしておく必要があります。

手順
データ・置き換えデータをExcelのデータタブ > データの取得 からそれぞれ読み込みます。
置き換えデータを読み込む際はテーブルデータを選択してください。

置き換えを行うクエリを選択 > fxボタンをクリック > 下記コードを入力
コードの解説画像を参考に、色のついた箇所を適宜変更してください。
= List.Accumulate(Table.ToRecords(置き換えリスト), 変更された型, (currentTable, replaceRecord) =>
Table.ReplaceValue(currentTable,replaceRecord[置き換え前],replaceRecord[置き換え後],Replacer.ReplaceText,{"商品名"}))
解説

コードは下記のような内容になっています。
List.Accumulate(リスト , 初期値 , (初期値のテーブルの状態 , 置換リストの要素) => 処理
リスト(置換リスト)の各要素を順番に処理
Tabel.ReplaceValue(初期値のテーブルの状態 , 検索値 , 置き換える値 , 置き換え方法 , 列リスト)
テーブル内の特定の列からリストの内容を置き換える
まとめ
今回は、リストデータを活用して値を置き換える方法についてご紹介しました。
1つずつ値を置換する必要がなく、また置き換えリストのデータ変更も行いやすいので、ぜひ活用してみてください。
AI・Microsoft 365 活用を業務改善につなげたい企業向けに、研修・導入支援・活用サポートを行っています。
「どんなことを依頼できる?」「実際の活用事例は?」という方は、ぜひ無料資料をご覧ください。
\ 業務効率化・補助金情報をお届け/
\ 活用事例も掲載しています /
ご質問やご相談などがございましたら、ぜひお気軽にお問い合わせください。
\2営業日以内にご返信! /

