Notesへ戻る

Power Platformメモ

Power AppsのFilter関数の使い方の入口

Power Appsでリストやコレクションを絞り込むFilter関数の基本的な書き方と、よくある使い方を整理したメモです。

Power AppsFilter関数GallerySharePoint

Power AppsのFilter関数の使い方の入口

この記事の位置づけ

この記事は、Power Appsの初学者向け技術メモです。関数の動作は環境・コネクタ・バージョンによって変わることがあります。

実際のアプリで動作を確認してください。

ざっくり言うと

Power Appsでギャラリーや変数に表示するデータを「特定の条件で絞り込みたい」ときに使うのがFilter関数です。

たとえば「ステータスが承認済みのデータだけ表示する」「担当者が自分のデータだけ表示する」といった絞り込みができます。

基本の書き方

Filter(データソース, 条件)

例:SharePointリストの「ステータス」列が「承認済み」のデータだけ取得

Filter(申請リスト, ステータス = "承認済み")

例:「担当者メール」列が現在のユーザーのメールと一致するデータだけ取得

Filter(申請リスト, 担当者メール = User().Email)

よくある使い方

ギャラリーに絞り込み表示する

ギャラリーの Items プロパティに Filter 関数を設定します。

Filter(申請リスト, ステータス = "申請中")

テキスト入力で検索する

テキスト入力コントロール(TextInput1)の値で検索する場合:

Filter(申請リスト, StartsWith(件名, TextInput1.Text))

または部分一致の場合:

Filter(申請リスト, TextInput1.Text in 件名)

複数条件で絞り込む(AND)

Filter(申請リスト, ステータス = "申請中", 担当者メール = User().Email)

カンマで区切るとAND条件になります。

複数条件で絞り込む(OR)

Filter(申請リスト, ステータス = "申請中" || ステータス = "承認済み")

|| を使うとOR条件になります。

Delegation(委任)について

SharePointリストなど外部データソースにFilter関数を使う場合、**委任(Delegation)**という概念に注意が必要です。

委任に対応していない関数や列を使うと、取得できるデータが先頭500件(または2000件)に制限されます。

委任に対応しているかどうかは、数式バーに黄色の警告マークが表示されることで確認できます。

委任対応の目安(SharePointの場合)

操作委任可否の目安
等号比較(= “値”)○ 対応
StartsWith○ 対応
in(部分一致)△ 非対応の場合あり
CountIf・Sum△ 非対応の場合あり

※ データソース・列の型によって変わります。実際の動作で確認してください。

SortとFilterを組み合わせる

絞り込みと並び替えを同時にする場合は、Sort関数と組み合わせます。

Sort(Filter(申請リスト, ステータス = "申請中"), 作成日時, Descending)

注意点

Filter関数はデータを絞り込むだけで、元のデータは変更しません。

データを変更(追加・更新・削除)するには Patch・Remove・Update などの別の関数を使います。

また、大量データのリストで委任が効かない条件を使うと、意図せずデータが一部しか表示されないことがあります。ギャラリーに表示されているアイテム数が上限値(500件など)にぴったり揃っている場合は、委任が効いていないサインです。

関連メモ・関連ツール