Bonten
@Bonten (裕之 加藤)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Power BI Desktop の計算テーブルでFIND関数がエラーになるのですが原因がわかりません。

Q&A

Closed

Power BI Desktop の計算テーブルにおいて、新規に列を追加する際に記述するDAX数式がエラーになるのですが、原因がわかりません。
このエラーの原因を教えて下さい。

【実現したいこと】
列 [address] い入っているメールアドレスの@が先頭から何文字目にあるかを検索したい。

◇記述した式
列 = Find("@",[address])
 ↓
以下のエラーメッセージが出てERRORとなります。
「関数 'FIND' に指定された検索テキストが、指定されたテキストで見つかりませんでした。」

ちなみに、以下の計算式は正しく処理されます。
列 = SUBSTITUTE([adress],"@","+"))
 ↓
xxx@bbb.com -> xxx+bbb.com

以下とすると上記と同様にエラーとなります。
列 = Find("+",SUBSTITUTE([adress],"@","+")))
 ↓
以下のエラーメッセージが出てERRORとなります。
「関数 'FIND' に指定された検索テキストが、指定されたテキストで見つかりませんでした。」

1

1Answer

列[address]に、@が含まれていないデータがないですか?
一個でもFindで見つからないデータがあると、エラーメッセージが出るようです。

解決方法:
列 = Find("@",[address], 1, -1)

のように、3番目の引数として start_num、4番目の引数として NotFoundValue を指定してあげると、エラーメッセージが出なくなりますよ。

参考:
https://docs.microsoft.com/ja-jp/dax/find-function-dax

1Like

Comments

  1. @Bonten

    Questioner

    @tokusyu さん、ご回答をありがとうございます。

    ご指摘の通り、修正しましたら問題なく動作しました。

    EXCEL等の感覚から抜け出せなく、もっとPower BIの特徴(基本原則)を
    はじめに理解する必要がありそうですね。努力します。

    大変、助かりました。ありがとうごいました。

Your answer might help someone💌