Power Automate for Desktopのデータテーブルはリスト構造か配列構造か?
Power Automate for Desktopのデータテーブルはリスト構造なのか配列構造なのか調べてみました。
連続したデータの構造としては、リスト構造と配列構造があります。一見似たような感じで扱えますが、リスト構造をインデックスを使って処理すると、毎回データの先頭から要素を探しに行くのでとんでもなく時間がかかる場合があります。
そこで、Excelに100行のテーブルを作り、for each と loop で処理してみました。(フローデザイナーから実行しています)
For each の場合
3回の実行結果は次の通りです。5.1107767秒
5.2474678秒
4.9642241秒
Loop の場合
3回の実行結果は次の通りで、なんと予想に反して、ほとんど差がありませんでした。
5.3192766
5.2053178
5.005117
試しに、500行に増やして一回試してみたところ、25.1092814と5倍になっただけでした。
内部的に配列構造なのか、リスト構造でインデックスを指定した際に、該当する要素のアドレスを参照できるようなテーブルを持っているのかもしれません。
とりあえず、この程度の簡単な処理では大差がないことがわかりました。気にせずに利用できるようです。
私自身は、余計なインデックス変数を使わない for each の方が好みですが。
コメント
コメントを投稿