Power Automate の文字列関数: Substring と IndexOf
Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。
今日のブログでは、DateTime 値から秒を取り除く 3 つの方法を検討します。 このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。
可能であれば、ビジネス要件を満たしながらデータのカーディナリティを下げることをお勧めします。ただし、DateTime 値のカーディナリティは非常に高い場合があります。
つまり、DateTime 列には膨大な数の一意の値を含めることができ、モデルのサイズやパフォーマンスに影響を与える可能性があります。
目次
Power Query で秒数を削減する方法
それに対処する明らかな方法が 2 つあります。1 つ目は、DateTime 値を常に分割して、日付が含まれる 1 つの列と時刻が含まれる 1 つの列になるようにすることです。
2 つ目は、分析を実行する必要がある粒度を決定することです。秒、分、さらには時間単位で報告する必要があります。
ただし、このブログでは、DateTime 値から秒を取り除く方法のみに焦点を当てます。
DateTime 値に対する完全な UI 駆動アプローチ
まず、 Power Query エディターに移動します。最初に学習するアプローチは、完全なユーザー インターフェイス主導のアプローチです。
DateTime 列を選択した状態で、[列の追加]タブに移動し、[時刻] を選択してから、[時間のみ]を選択します。
時間列が表示されます。
「時間」アイコンをクリックし 、「テキスト」を選択します。
次に、同じ手順に従って時間に戻します。[現在のステップを置換] を選択せず、代わりに[新しいステップを追加] を選択します。
そして今、私たちはその時間の価値を数秒も失ってしまったのです。
個人的には、テキストに変換してから元の時刻に戻すこの方法をより頻繁に使用しましたが、別の構文を使用する非 UI 主導のアプローチを使用していました。
DateTime 値に対する非 UI 主導型のアプローチ
非 UI 主導のアプローチを見てみましょう。
左上隅にあるミニ テーブル アイコンで、 [カスタム列の追加]を選択します。
新しい列をTime2と呼ぶことができます。DateTime 値をテキストに変換するには、関数=DateTime.ToText ([作成日), “HH:mm”) を使用できます。
上の画像に示すように、右側の「作成日」列をクリックすると、関数の「作成日」部分が追加されることに注意してください。HH:mm は時刻形式を示し、24 時間形式を適用するには大文字の HH を使用します。
「OK」をクリックしましょう。結果から、時と分のみを含む新しい列が表示されます。
また、時間の形式を小文字に変更してみましょう。これを行うには、数式バーに移動し、HHを hhに変更します。 その後 チェックマークをクリックしてください。
このブログの目的のために、テーブルをHHに戻して 24 時間形式に戻しましょう。
取得する時間値はテキスト形式です。時刻形式に戻すには、以下に示す機能を使用してチェック マークをクリックします。
DateTime.ToRecord の使用
もう 1 つのメソッドを使用して、まったく同じことを行うことができます。この例では、 DateTime.ToRecordを使用しています。
まず、 「ミニ テーブル アイコン」に移動し、次に「カスタム列を追加」をクリックします。
[カスタム列] ウィンドウが表示されます。Time3という名前を使用し、以下に示す式を使用して DateTime.ToRecord関数を適用できます。
「OK」をクリックしてレコードを返します。
いずれかのレコードをクリックすると、下にプレビューが表示されます。
プレビューでは、日付と時刻の部分がレコード内のフィールドを取得していることがわかります。
組み込みの #time 関数を使用すると、それを時間値に戻すことができます。まず、より簡単に参照できるように変数を作成します。したがって、t を、組み込みの時間値を追加してすでに作成した関数と等しくします。時、分、秒の 3 つの引数を取ります。
左かっこを追加して関数を拡張します。時間については、レコードtを呼び出し、 t[hour]のように角括弧内に「hour」と入力してフィールド名「hour」を参照します。
カンマ (,)を追加し、分について同じ手順を繰り返します: t[Minute]。秒を表すカンマとゼロ (0)をもう 1 つ追加します。
結果として得られる関数を以下に示します。次にチェックマークをクリックします。
もちろん、関数に型時間を追加して型を設定することもできます。
結論
今日のブログでは、 Power QueryでDateTime値から秒を削除する方法を学びました。完全な UI 主導のアプローチ、非 UI 主導のアプローチ、および DateTime 値レコードの使用を含む 3 つの異なる方法で、DateTime値のカーディナリティを下げるさまざまな方法を練習しました。
ではごきげんよう、
メリッサ・デ・コルテ
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 を使用して数式内に仮想リレーションシップを作成する方法を説明します。