Power Automate range関数で指定回数のループを回す|変数不要でforループを実現

Power Automateでフローを作っていたときに「1から10みたいな連続する数字の配列」を作りたい場面があった。

わざわざ変数を初期化して、ループ処理で1ずつ足して、のような面倒なことをしたくなかったので調べてみたら「range関数」という便利な関数があるとのこと。

ということで今回は、ぱっと出てこないと意外と詰まる「range関数」の便利な使い方をメモ。

スポンサーリンク

Power Automateのrange関数とは?

range関数は、連続した整数の配列をサクッと作ってくれる関数。

使い方は超シンプル。第一引数で「開始する数値」を、第二引数で「欲しい個数」を指定するだけ。

range(【開始する数値】, 【欲しい整数の個数】)
これだけで、指定した数の整数を「配列」の形で返してくれる。

せっかくなので、具体的な使い方を2つご紹介。

使い道1:変数を設定せずに、決まった回数だけ処理を繰り返す

Apply to Each(それぞれに適用する)アクションと組み合わせることで、簡単にforループのような決まった回数のループ処理を実現できる。

Apply to Eachの[以前の手順から出力を選択]にrange関数を入れるだけで、
指定した回数のループが実行される。

使い道2:連続した日付の自動生成

続いてaddDays関数と組み合わせることで、連続した日付を簡単に生成することができる。

「選択」アクションの[開始]にrange関数を設定し、[マップ]に以下の式を入れる。

// 連続した日付を生成(item()は選択アクションの中でrange関数の各値を指定する式)
addDays(utcNow(),item(),'yyyy-MM-dd')

// 日本時間ならこっち
addDays(addHours(utcNow(), 9), item(), 'yyyy-MM-dd')
すると、連続した日付を配列で取得できる。

ということで、地味だけど知っているとフロー作成がかなり楽になる「range関数」のご紹介でした。

コメント

タイトルとURLをコピーしました