Power Automate の文字列関数: Substring と IndexOf
Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。
このチュートリアルでは、カスケード ドロップダウンがどのように機能するかについて説明します。
カスケード ドロップダウンは、相互に依存する 2 つ以上のドロップダウンです。
Power Apps でカスケード ドロップダウンを使用すると、特に大量のデータをフィルターする場合にエンド ユーザーのエクスペリエンスが向上します。
目次
顧客参照テーブルの追加
新しい画面にドロップダウンを追加することから始めましょう。
マスター画面を複製して新しい画面を追加します。これは、過去のチュートリアルで説明したテクニックです。この画面を「アイテム検索」と呼びます。
次に、画面にデータテーブルを追加しましょう。
必要なレコードの表示を開始するには、テーブルにデータ ソースを追加する必要があります。右側のプロパティ ペインから Table1 をデータ ソースとして追加しましょう。
次に、「フィールドの編集」をクリックして、必要なフィールドを追加しましょう。このテーブルでは、名、姓、場所、VIP レベルを使用します。
テーブルに必要なレコードが含まれたので、これが顧客参照テーブルとして機能します。
ここでの目標は、場所と VIP レベルに基づいてこのテーブル内のレコードをフィルターできるようにすることです。そこでドロップダウンが登場します。
最初のドロップダウンの追加
[挿入] リボンの下の [入力] に移動し、[ドロップダウン] をクリックします。
デフォルトでは、ドロップダウンの値は 1、2、3 になります。
ドロップダウンの項目を変更するには、右側のペインに移動し、顧客参照テーブルに使用したデータ ソース (Table1) を接続します。
次に、[値] で、ドロップダウンで使用する列を選択します。この場合は、Location を使用しましょう。
それが完了すると、ドロップダウンにすべての可能な場所が表示されます。ただし、重複も多数見られます。
これは、現時点では、レコードが何回表示されたかに関係なく、単に Location 列のすべてのレコードを取得しているだけであるためです。これらの重複を取り除くために、Distinct 関数を使用します。
Distinct 関数は、特定の列のレコードを評価し、重複を削除します。
そこで、ドロップダウンを強調表示して、Items プロパティを選択しましょう。次に、Distinct 関数を使用して、Table1 と Location を参照します。
この数式を固定すると、ドロップダウンには重複のない一意の項目のみが含まれるようになります。
このドロップダウン内のレコードを参照しやすくするために、アイテムがアルファベット順に表示されるように並べ替えてみましょう。通常はソースが必要な SortByColumn 関数を使用します。この例では、ソースは「場所」列内の個別の項目のリストになります。
列も必要です。この場合、結果自体から項目を並べ替える関数が必要です。基本的に、この結果は、先ほど参照したソース、つまり個別の項目のリストから取得されます。したがって、Result を参照します。
これで、すべての一意の場所がこのドロップダウンに並べ替えられました。
データテーブルをドロップダウンに接続する
次のステップは、このテーブルをドロップダウンに依存させることです。このために、フィルター関数を使用します。
そこで、データ テーブルを強調表示し、Items プロパティに移動して、Filter 関数を使用しましょう。Filter 関数は通常、ソースと論理テストを必要とします。この場合、ソースは Table1 です。論理テストに関しては、ユーザーがドロップダウンから選択した値と同等であることが必要です。
左側のペインを見ると、ここで参照するドロップダウンが Dropdown4 であることがわかります。
これが論理テストに使用する要素です。選択された項目に基づいて結果のみを表示したいため、Dropdown4.Selected.Result を使用します。
ここではドロップダウンでオーストラリアが選択されているため、テーブルにはオーストラリアを場所として含むレコードのみが表示されます。
2 番目のドロップダウンの追加
最終的にはドロップダウンをカスケードしたいので、少なくとも 2 つ以上のドロップダウンが必要であることを意味します。それでは、2 番目のドロップダウンを追加しましょう。今回は、VIP レベルに基づいてレコードをフィルタリングするために使用されます。
この例では、新しいドロップダウンは Dropdown5 です。
もう一度、データ ソース (Table1) をタップする必要があります。次に、VIP レベルを値として使用します。
VIP Level 列の項目にも重複がある可能性が高いため、もう一度 Distinct 関数を使用して、プロセス内で Table1 と VIPLevel を参照します。
これにより、ドロップダウンに重複がないことが保証されます。
では、これらの項目も整理してみましょう。最初のドロップダウンと同様に、SortByColumn を使用し、今回は Location ではなく VIPLevel を参照します。
この式を適用すると、ドロップダウン内の項目が適切な順序になります。
次に、データ テーブルに戻って、最初のドロップダウンに基づいてフィルタリングしているだけでなく、2 番目のドロップダウンにも基づいてフィルタリングしていることを確認する必要があります。データ テーブルとフィルター関数の利点は、フィルター条件を必要なだけ追加できることです。
したがって、元の式に戻ると、VIPLevel = Dropdown5.Selected.Result を追加するだけで済みます。
数式を保存したら、両方のドロップダウンから項目を選択できるようになり、データ テーブルが両方に基づいてレコードをフィルター処理します。たとえば、[場所] ドロップダウンでシンガポールを選択し、[VIP レベル] ドロップダウンで 1 を選択すると、これらのパラメータに一致する 2 つのエントリが表示されます。
VIP レベルを 4 に変更すると、フィルターに一致する結果が 1 つ表示されます。
ここで、場所としてシンガポールで VIP レベル 5 を選択すると、テーブルが空になることに注目してください。
これは、シンガポールには VIP レベル 5 に属する人がいないことを意味します。これは理解できますが、一致するレコードがない場合、2 番目のドロップダウンに 5 が表示されないようにしたいのです。結局のところ、それがカスケード ドロップダウンのすべてなのです。
カスケードドロップダウンの作成
現時点では、2 番目のドロップダウンの Items プロパティは Table1 を参照し、VIPLevel 列から個別の項目を取得し、実際の結果を使用して並べ替えています。
私たちが望んでいるのは、Table1 全体を調べるのではなく、最初のドロップダウンで選択されたものにデータ ソースが絞り込まれることです。たとえば、ユーザーが [場所] ドロップダウンからシンガポールを選択した場合、VIPLevel ドロップダウンにはテーブル全体ではなく、シンガポールに一致する項目のみが表示されます。
そこで、ここに Filter 関数を追加して、Location が Dropdown4.Selected.Result と同等であるという条件に基づいて Table1 がフィルターされるようにします。
ここでドロップダウンを確認すると、最初のドロップダウンでシンガポールが選択されており、2 番目のドロップダウンには 5 が表示されなくなっていることがわかります。
今回カナダを確認してみると、VIPレベル以下の3は存在しないことがわかります。
これを元のデータ ソース (Table1) と照らし合わせて再確認すると、カナダには VIPLevel 3 に一致するものがないことがわかります。これは、私たちの公式が機能することを意味します。
Power Apps の概要: 定義、機能、機能、および重要性
Power Apps 環境: アプリ要素を適切にセットアップする
PowerApps の関数と数式 | Power Apps の概要 はじめに
結論
カスケード ドロップダウンは、特に大量のデータを扱う場合に、エンド ユーザーのエクスペリエンスを確実に向上させることができます。これにより、結果をフィルタリングする際に何も得られない余分な項目を処理する必要がなくなるため、エンド ユーザーは必要なレコードをより迅速に見つけることが容易になります。
必要に応じて他のドロップダウンをドロップできることに注意してください。ドロップダウンを 2 つだけに制限する必要はありません。これは、データ ソースにさらに多くのフィールドがある場合、フィルタリングの精度に応じてドロップダウンをさらに追加できることを意味します。
ではごきげんよう、
ヘンリー
Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。
LuckyTemplates ツールチップを使用すると、より多くの情報を 1 つのレポート ページに圧縮できます。効果的な視覚化の手法を学ぶことができます。
Power Automate で HTTP 要求を作成し、データを受信する方法を学んでいます。
LuckyTemplates で簡単に日付テーブルを作成する方法について学びましょう。データの分析と視覚化のための効果的なツールとして活用できます。
SharePoint 列の検証の数式を使用して、ユーザーからの入力を制限および検証する方法を学びます。
SharePoint リストを Excel ファイルおよび CSV ファイルにエクスポートする方法を学び、さまざまな状況に最適なエクスポート方法を決定できるようにします。
ユーザーがコンピューターから離れているときに、オンプレミス データ ゲートウェイを使用して Power Automate がデスクトップ アプリケーションにアクセスできるようにする方法を説明します。
DAX 数式で LASTNONBLANK 関数を使用して、データ分析の深い洞察を得る方法を学びます。
LuckyTemplates で予算分析とレポートを実行しながら、CROSSJOIN 関数を使用して 2 つのデータ テーブルをバインドする方法を学びます。
このチュートリアルでは、LuckyTemplates TREATAS を使用して数式内に仮想リレーションシップを作成する方法を説明します。