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 の方が好みですが。


コメント

アクセス数の多い投稿

セキュリティ対策ソフトのノートンが詐欺ソフトまがいになってしまってショック

ZIPファイルを開こうとすると、展開を完了できません、と言われる

突然滅茶苦茶遅くなったPCがWindows Updateのキャッシュクリアで復活

Windows セキュリティーのビックリマークが消えない

Power Automate Desktopでブラウザでダウンロードしたファイルを処理する

Excel 2019 クエリが原因で日本語入力の一文字目が勝手に確定する

Excel VBAからODBCを使ってデータを簡単に取得する

NEC Aterm WX5400HP をセットアップ

Teamsで日本語入力すると左上に変換ウィンドウが出る

オカムラ家具のOAチェアー、コンテッサを分解清掃