🔄

Power Apps で複数選択可能なコンボ ボックスでフィルターをする

2022/01/01に公開

Power Apps のコンボ ボックスは複数の値を選択することができますが、これを使って複数の値でフィルターをしたいと思いました。

具体的には以下の感じです。初期状態は何も選択されていないのですべてが表示されます。

コンボ ボックスで複数の値を選択するとその値にしたがってフィルターされます。

どうやって実現しているのかというと、コンボ ボックスの SelectedItems を見て、値が選択されていれば、データ ソースに条件を追加するようにしています。

わかりやすいようにテキストも貼っておきます。

Filter(
    'Test List 1',
    Or(
        Or(
            IsEmpty(ComboBox1.SelectedItems),
            IsBlank(ComboBox1.SelectedItems)
        ),
        And(
            Not(
                IsBlank(
                    LookUp(
                        ComboBox1.SelectedItems,
                        Value = "Test List Item 1"
                    )
                )
            ),
            Title = "Test List Item 1"
        ),
        And(
            Not(
                IsBlank(
                    LookUp(
                        ComboBox1.SelectedItems,
                        Value = "Test List Item 2"
                    )
                )
            ),
            Title = "Test List Item 2"
        ),
        And(
            Not(
                IsBlank(
                    LookUp(
                        ComboBox1.SelectedItems,
                        Value = "Test List Item 3"
                    )
                )
            ),
            Title = "Test List Item 3"
        )
    )
)

コンボ ボックスの選択肢についてそれぞれ条件を書かないといけないので、コンボ ボックスの選択肢は固定である必要があります。委任の警告は出ないので SharePoint リストでもうまく動作するはずです (試していません)。

Discussion