Power Automate の文字列関数: Substring と IndexOf
Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。
これは、LuckyTemplates のアンピボット列に関するチュートリアルです。複数の列の組み合わせをアンピボットする方法を説明します。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。
これはアンピボット バリエーション シリーズの一部であり、データを分析に適した適切な表形式に変換することがすべてです。ほとんどの変換はユーザー インターフェイスを使用して実行できます。
これから紹介する例は、フォーラムで LuckyTemplates メンバーによって提起された質問からのもの。ソーステーブルを見ると、1 つの行が表示されます。目的のレイアウトでは、ソース テーブルの 1 行が残業タイプごとに分割された 3 つのレコードが表示されます。
したがって、そのレコードの値について何かを示す属性を作成し、その残業タイプの時間とコストを組み合わせる必要があります。
これを実現するにはいくつかの方法がありますが、ここでは、 List.Zipというリボンからは利用できない強力な M 関数を使用するソリューションを紹介します。それでは、それがどのように機能するかを調べてみましょう。
目次
List.Zip を使用した LuckyTemplates 列のアンピボット
左上でデータのペアを拡大すると、3 つの残業タイプを区別できます。List.Zip 関数は、ネストされたリストを含む 1 つのリストを受け取り、結果としてネストされたリストを含む 1 つのリストを返します。
最初のリストには、そのレコードの値に関する情報を送信する属性が含まれます。2 番目のリストには時間が含まれ、最後のリストにはコストが含まれます。
右を見ると、List.Zip が位置に基づいてネストされたリストの値を結合していることがわかります。したがって、左側の最初の行にあるすべてのものが右側の新しいリストに結合されます。そして、List.Zip で提供したソース リストの 1 行おきの行でも同じことが起こります。
それでは、 Power Queryに進みましょう。List.Zip はリボンからは利用できないことはすでに述べたので、それを使用するには実際の M を記述する必要があります。カスタム列を追加すればそれが可能になります。
そこで、左隅のミニテーブルから [カスタム列の追加]を選択します。
「List.Zip」と入力し、開き括弧を入れてみましょう。リストを持つ単一のリストを求めますよね?そこで、リスト初期化子を使用してリストを作成します。
次に、残業タイプごとに 1 つずつテキスト値が表示されます。カンマを追加して新しいリストを作成します。List.Zip はリスト内の位置に基づいて値を結合することに注意してください。したがって、値をまったく同じ順序で渡す必要があります。次に、そのリストに中括弧を付けます。
最終的なリストにはコストが含まれるため、カンマと左中括弧を入れて、同じ順序で値を選択します。そして再び、そのリストに閉じ中括弧を追加し、次にリストを含むリストに閉じ中括弧を追加し、関数に別の閉じ括弧を追加します。次に、「OK」をクリックします。
さて、ここでは値列はもう必要ありませんね。最初の列を選択し、Shift キーを押して最後の列を選択し、[列の削除]をクリックします。
ここの空白部分にある[決定]をクリックして、リストの内容を確認します。複数のリストを含むリストがあることがわかります。これはまさに List.Zip が生成する出力です。
新しい行に展開して値を抽出
したがって、これらの横向きの矢印を使用して、新しい行に展開します。
そして、3 つのレコードが生成されました。もう一度空白の横をクリックすると、最初のレコードの値があることがわかります。
これらの横矢印を再度クリックし、 [値の抽出]をクリックして、区切り文字を選択することで、それらを抽出できます。タブを使用して「OK」を押します。
すべての値は 1 つの列に結合されていないため、[変換] タブで[列の分割]を選択し、[リミッターによる]をクリックします。
次に、ここでタブを選択し、「OK」を押します。
データ型が正しく検出されなかったため、Shift キーを押しながら最後の列を選択し、[変換] タブで [データ型の検出]を選択します。
それでは、これらの列に適切な名前を付けてみましょう。
LuckyTemplates で列のピボットを解除する方法 LuckyTemplates の
ピボット解除とピボットの基本 – クエリ エディター
LuckyTemplates クエリ パラメーターの確認: テーブルの最適化
結論
このチュートリアルでは、リボンからアクセスできる LuckyTemplates の [列のピボット解除] コマンドを使用せずに、複数の列の組み合わせをピボット解除する方法を説明しました。ここでは、List.Zip を使用して、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 を使用して数式内に仮想リレーションシップを作成する方法を説明します。