今回は、フィルターをかけようとした時に条件数が足りなくなった際の対処について紹介します。

1.あいまい検索条件

Power BI 上でフィルターをかける際に、高度なフィルターを使うことであいまい条件を設定することができます。
ANDやOR条件も設定できますので、複数条件にも対応しています。

しかし、この条件設定ですが、AND/ORで複数条件とできるのは2つの条件までとなっています。
スライサーなどで個別指定すればいいのでは?と思われるかもしれませんが、一意のコードが「年度+KYO+数値」となっているため、年度が変わった際にまたPower BIのフィルターを変更(追加)しなければならないので、できれば「KYO+数値」を含むといった条件指定にしたいのです。

2科目だけの指定では当然足りないので、3つ以上の条件を設定したいことはよくあると思うのですが、なぜないのでしょうかね・・。

2.DAXテーブルの作成

Power Queryから新規テーブルを作成してもいいのですが、条件設定が多くなるとDAXで作成する方が楽になることもありますので、ここではDAXでテーブルを作成します。

「新しいテーブル」を作成し、以下のDAX関数を記述してください。
「科目リスト」と「COURSE_ID」は、使われているテーブル名・カラム名に変更する必要があります。
CONTAINSTRING関数は、「〜を含む」というあいまい検索をするための関数です。
「||」はORの意味ですので、COURSE_IDがKYO10028、KYO10030、KEI30022、KEI30091のいずれかを含んでいる行だけを科目リストテーブルから取ってきて、新たなテーブルを作成します。

filterTABLE = 
    FILTER(科目リスト,
               CONTAINSSTRING('科目リスト'[COURSE_ID], "KYO10028")||
               CONTAINSSTRING('科目リスト'[COURSE_ID], "KYO10030")||
               CONTAINSSTRING('科目リスト'[COURSE_ID], "KEI30022")||
               CONTAINSSTRING('科目リスト'[COURSE_ID], "KEI30091")
               )

おわりに

いかがだったでしょうか?
今回はサクッとですが、高度なフィルター条件で対応できない場合の対処法について紹介しました。

ローコードゆえに痒い所に手が届かないこともありますが、DAXを利用することである程度解決できますね!