5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Power Query の「値の置換」にて列の値を使用する方法

Last updated at Posted at 2022-01-09

Power Query エディタから「値の置換」を用いると列から特定の値を置換することができますが、指定できるのは文字列のみで、条件列を追加するときのように他の列の値を指定することができません。

そこでM式のクエリを直接編集して、置換後の値に列の値を指定する方法や、置換するための条件に数式を用いる方法について、下記テーブルを元データにして解説します。

image.png

「値の置換」を使って ReplaceValue クエリを追加する

Col3 から 'empty' を検索して、 Col1 の値で置換させようとすると、「置換後」のテキストボックスに列名を指定したとしても、文字列として解釈されるため意図した結果になりません。

image.png

クエリ
= Table.ReplaceValue(
        変更された型,
        "empty",
        "[Col1]",
        Replacer.ReplaceText,
        {"Col3"}
    )

image.png

置換する値に列名を指定する方法

ReplaceValue の newValue 引数を each キーワードを使って書き換えると Col1 の値で置換する事ができます。

クエリ
= Table.ReplaceValue(
        変更された型,
        "empty",
        each [Col1],
        Replacer.ReplaceText,
        {"Col3"}
    )

image.png

検索する値をif式で指定する方法

oldValue 引数に元の列名を使用すればReplaceValueの検索値に必ずヒットするようになるため、newValue 側でif条件式を詳しく記入することもできます。

クエリ
= Table.ReplaceValue(
        変更された型,
        each [Col3],
        each if Number.Mod([Col2], 2)=0 
            then [Col3] 
            else [Col1] ,
        Replacer.ReplaceText,
        {"Col3"}
    )

image.png

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?