1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Power Apps テキスト入力で検索機能を実装してみる Search関数

Posted at

はじめに

Power Appsでデータを検索する際は Filter 関数を使って検索することが多いと思います。
本記事では Search 関数を使用して部分一致を用いた検索を行う方法を解説します。

Search関数とは??

Search 関数は指定したキーワードが含まれるデータを取得するための関数です。
ギャラリー内のデータを検索して表示させたい時に便利です!

Search関数の基本構文

書き方
Search(データソース, 検索文字列, 検索対象列1, 検索対象列2, ...)
  • データソース...検索対象データ (DataverseやSharePointリストなど)
  • 検索文字列 ...ユーザー側が指定する検索文字列
  • 検索対象列 ...検索を実行する列(複数指定が可能)

基本的な使い方

単一の列を検索対象に設定
ここに Dataverseで作成したテーブル 社員名簿テーブル があります。
各列の名称はそれぞれの通りです。
TextInput1 プロパティにキーワードを入力すると 'フルネーム' 列から部分一致するレコードのみをフィルターしてくれるように設定します。
ギャラリーコントロールを置き ItemsSearch 関数を設定します。

image.png

数式は以下のとおりです↓↓

書き方
Search(社員名簿テーブル,TextInput1.Text,フルネーム)

では、この TextInput1 プロパティに 田中 というキーワードを入力して
フルネーム田中 を含むレコードのみ検索してみましょう。

検索結果
image.png

ご覧のように 田中 がフルネームに含まれるレコードのみが自動でフィルターがかかりました。
このようにして単一の列を対象にキーワード検索を行うことが可能です。

複数列を検索対象に設定
先ほどは フルネーム 列のみを検索対象に設定しましたが、今度は 部署 も検索対象に設定してみましょう。

書き方は先ほどの数式に引数で 部署 の列を加えるだけです。

書き方
Search(社員名簿テーブル,TextInput1.Text,フルネーム,部署)

image.png

このように先ほどは フルネーム のみで検索可能でしたが 部署 の列でも検索がヒットするようになりました。

メリットとデメリット

メリット
Search 関数は 部分一致 の設定を行いたいときに非常に便利です。
また、複数列を対象に検索も行うことができ、構造も非常に簡単なので比較的扱いやすい関数となっています。

デメリット
複雑な条件には向いていないため、その場合は Filter 関数を使う方が良いでしょう。
データ件数がかなり多い場合には遅延が発生することもあります。

まとめ

今回は簡単な検索機能として Search 関数について解説を行いました。
複雑な条件でない場合は設定しやすいので使いこなせると非常に便利だと思います。
Filter 関数と使い比べて用途に合わせた実装をしてみてください!

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?