Power Automate の文字列関数: Substring と IndexOf
Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。
使用する方法を見ていきます。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。
CALCULATE は、レポートにさらに深い洞察を追加するのに役立つ最も動的な関数の 1 つです。しかし、それを本当に理解するには、行とフィルターのコンテキストもよく理解する必要があります。
目次
使用したサンプルデータ
このチュートリアルでは、製品、数量、および単価を示す単純なデータセットを使用してみましょう。
Productsのみを含むディメンション テーブルもあります。
モデルを見ると、ディメンション テーブルに表示される製品が多対 1 の関係を通じてファクト テーブルにリンクされていることがわかります。
LuckyTemplates の CALCULATE による行コンテキスト
行コンテキストは、 CALCULATE が何であるかを真に理解するために理解する必要がある主要な概念の 1 つです。これを明確にするために、まずデータセットが Excel でどのように表示されるかを見てみましょう。
基本的に、行コンテキストは、すべての単一行に何が起こっているかを定義します。たとえば、製品 A の売上を取得する場合は、単純に等号を入力し、数量と単価の値を乗算します。
同じロジックを行ごとに適用すると、各行の Sales 金額が取得され、 Total Salesを算出できるようになります。
次に、LuckyTemplates に切り替えてみましょう。
同じ計算が行ごとに繰り返されたことに注意してください。LuckyTemplates には多数の反復関数があり、そのほとんどは X で終わります。たとえば、になります。
ご覧のとおり、SUMX ではテーブルを参照する必要があるため、データが保存されているFactTable を使用します。
次に、 FactTableの必要な列( QuantityとUnit Price )を乗算します。
Enter キーを押すと、 Salesが表示されます。
LuckyTemplates の CALCULATE によるコンテキストのフィルター処理
2 番目に見なければならないのはフィルター コンテキストです。これはCALCULATEのもう 1 つの重要なコンポーネントです。
CALCULATE を使用するということは、式に適用されるフィルター コンテキストを変更することを意味します。そこでまず、フィルター コンテキストを変更する方法を見ていきます。これは単にレポートのフィルターを変更することを意味します。
Excel レポートに適用する場合は、列名の横にあるドロップダウン矢印をクリックして、適用するフィルターを選択するだけで簡単です。
たとえば、製品 A のデータのみが必要な場合は、このフィルターで A にチェックを入れるだけです。
「OK」をクリックすると、レポートには製品 A の売上のみが表示されます。
これがプロセスの 2 番目の部分で、式にフィルターを適用します。この場合、式はSalesです。
LuckyTemplates に戻ると、同じことを行うにはCALCULATEを使用する必要があります。まず、 Sales Product Aの新しいメジャーを作成しましょう。
次に、CALCULATEを使用して、 Salesという式を適用します。
次に、 FactTableを参照してフィルター コンテキストを変更します。
次に、 Products列から製品 A に関連する売上のみが必要であることを指定する必要があります。
さて、製品 A の売上は 6,520 で、これは Excel テーブルから得られた結果と同じです。
SUMX を使用したフィルター コンテキストの適用
ここでの主な焦点はCALCULATEですが、これは他の関数を使用して実行できることを知っておくことも重要です。たとえば、私たちが行ったフィルタリングは、Excel 関数SUMifを使用するのとまったく同じです。ただし、LuckyTemplates で実行する場合は、 SUMXを使用できます。
これを行うには、Sales Product A v2 という別のメジャーを作成しましょう。
行ごとに調べて製品 A に関する詳細を確認したいので、SUMX を適用します。通常、データの取得元が FactTable であるため、最初に本能的に FactTable を参照することになります。
しかし、これを行うと、フィルターを適用できなくなります。したがって、最初にテーブルを参照するのではなく、関数の使用を優先する必要があります。FILTER は、データを行ごとに確認できるようにするもう 1 つのイテレータです。
FILTER関数を配置したら、 FactTable を参照するのはそのときだけです。次に、使用するフィルターを指定して、製品 A に関連する製品列の項目を参照します。
次に、Sales という式を指定します。
このメジャーを結果に組み込むと、以前に作成したメジャーと同じ合計が表示されることがわかります。
ここで、他にも使用できる関数があるのに、なぜCALCULATE が必要なのかと疑問に思われるでしょう。実のところ、CALCULATE にはこれまで説明した以外にも多くの用途があります。
LuckyTemplates での CALCULATE のその他の使用法
CALCULATE の他の使用方法を示すために、売上パーセンテージのデータセットに別の列を追加してみましょう。Excel では、これはSales を Total Sales で割ることを意味します。
また、列内の残りのセルに同じ数値が適用されるように、総売上高のセルをロックする必要があります。
Enter キーを押すと、合計が 100% になるパーセンテージが表示されます。
フィルターを変更して製品 A のデータのみを取得すると、売上パーセンテージの列が同じパーセンテージを保持していることがわかります。
LuckyTemplates に切り替えると、CALCULATEを使用して次のようなことを行うことができます。
重点施策の下に新しい施策を作成しましょう。まず、すべての売上から始めます。これは、 Excel レポートの総売上に相当します。これにはCALCULATE を使用します。
次に、 Sales を式として使用します。
Excel テーブルを振り返ると、フィルタリングにもかかわらず列全体で同じ合計が使用されることを確認するために、合計売上高を含むセルをロックする必要があったことを思い出してください。LuckyTemplates レポートでは、これを行うためにを使用します。
Enter をクリックすると、すべての製品のすべての売上が表示されます。
これにより、売上のパーセンテージを取得しやすくなります。そこで、そのための別のメジャーを作成しましょう。
を使用して、 Excel で行ったのと同じ方法で、再びSales を All Sales で除算します。
Enter キーを押すと、売上の割合が表示され、合計すると 100% になります。
結論
これらは、CALCULATE 関数の多くの使用法のほんの一部です。実際、タイム インテリジェンスの計算にも使用できます。
これらの他の用途を示す他のチュートリアルを参照してください。これは基本的に、レポートに可能な限り多くの洞察を示したい場合に欠かすことのできない機能の 1 つです。
ではごきげんよう、
ムダシル
LuckyTemplates CALCULATE: LuckyTemplates 内の Calculate 関数を使用した高度な DAX 数式の鍵
DAX を使用して LuckyTemplates でパーセンテージ マージンを計算する
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 を使用して数式内に仮想リレーションシップを作成する方法を説明します。