Power Automate の文字列関数: Substring と IndexOf
Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。
私が準備して LinkedIn に投稿した最近の DAX ポップ クイズに続いて、クイズに回答した人の 1 人が、テキスト列を適切な順序に並べるための数値並べ替え列が不要になるという興味深いアイデアを提案しました。この新しいアプローチを試してみたところ、見事に機能しました。今日のチュートリアルでは、このアプローチを使用して、DAX と Power Query の両方を使用する自己並べ替えテキスト列を作成する方法を説明します。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。
外部ツールから取得した練習データ セットを見てみましょう (LuckyTemplates 拡張日付テーブルを取得しました)。このテーブルには、 Month Nameという名前のフィールドがあり、これに焦点を当てます。
月の名前を取得してテーブルに取り出してみましょう。アルファベット順にソートされていることがわかります。したがって、テーブルやビジュアルで適切に機能させるには、この問題に対処する必要があります。
目次
LuckyTemplates で DAX と Power Query を使用して自己並べ替え列を作成する方法
まずはPower Queryをやってみましょう。Dates テーブルに移動して列を作成し、簡単な M コードを少しだけ使用します。この列を月名と呼び、それが自己並べ替え列であることを示すためにアスタリスクを使用します。
数式にはText.Repeatという関数を使用します。挿入または繰り返したいテキストと、それを繰り返す回数を尋ねます。明示的なテキストの代わりに、非印刷文字を使用します。そのために、Character.FromNumberという関数を使用できます。使用する番号は、非印刷スペースの番号である 0032 です。これを 12 からMonthOfyearを引いた数だけ繰り返します。次に、それを月名と連結します。
それが私たちのコラムに追加されます。見た目は同じですが、前面に非印刷スペースが追加されました。
「月」を検索すると、自己ソートで「月名*」フィールドが見つかります。これをテーブルに投げ込むと、アルファベット順に並べ替えるのではなく、実際にはスペースに基づいて時系列に並べ替えていることがわかります。
ここでSort by Columnを見ると、それ自体がソートされているだけです。追加の並べ替えフィールドは適用されていません。
DAX でも同様のアプローチを使用してこれを行うこともできます。その方法を説明しましょう。
まず、ここにカスタム列を追加しましょう。方法論は同じです。機能は少し異なります。これを、二重アスタリスクを付けた「月名」と呼びます。という関数を使用します。全く同じ構造ですね。テキストを使用し、それを繰り返す回数を指定します。
を使用します。次に、非印刷スペースの番号である0032 を取得し、それを12 から MonthOfyear を引いた数だけ繰り返します。
これを月名フィールドと連結し、月名* ではなく、元の月名を使用しましょう。LEFTを使用してこれを短いフィールドに切り詰め、次に 3 (最初の 3 文字だけを取得します) を使用して、それがどのように見えるかをビジュアルで使用できるようにします。
これをテーブルに取り込むと、M コードとまったく同じように時系列に並べ替えられます。
これはテーブルだけでなく、ビジュアルでも機能します。
LuckyTemplates の DAX 関数 COLUMNSTATISTICS
拡張日付テーブル
LuckyTemplates の日付テーブルの列を並べ替えるPower Query M 関数
結論
これは、DAX と Power Query を使用して 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 を使用して数式内に仮想リレーションシップを作成する方法を説明します。