Power AutomateでExcelの表を256行以上取得する方法
Power AutomateでExcelの表を256行以上取得する方法
以前、Power AutomateでExcelの表を取得する際に、256行までしか取得できないので対策方法を紹介しました。こちら
しかし上記方法は無駄が多く、行数が増える度にフローのメンテナンスを行う必要が出てしまうので、正直イケてないです。。なのでもう少し調査をしてみたところ他の方法で256行以上取得できることが分かったため新しい方法を紹介します。
またこの内容は動画でも紹介しているので合わせて参考にしてみてください。
一応テスト
設定方法の前に、デフォルト設定だと本当に256行しか取得できないのかを確認します。
方法はシンプルで、300行近く用意したサンプルのテーブルを取得し、その後のApply to eachで何回繰り返しされるかを確認します。
- サンプルファイルの確認
- 確認用フロー
- 結果
今回はIDのみのテーブルを用意し、1から350までのデータを格納しておきます。(256行以上のデータがあれば良いです。)
フローの全体は次のようになります。
格納用の変数を用意し、先ほどのサンプル表を取得します
その後取得したデータで繰り返し処理を行い、データを文字列変数に結合していきます。
最後に結合した文字列を結果確認用の変数に格納します。
この状態でテストを実行し、Apply to eachの処理数を確認します。すると下記のように表示されていることが確認できます。
設定方法
デフォルトでは256行しか読み取れないことが確認できたところで、256行より多く読み込む方法を紹介します。
「表内に存在する行を一覧表示」 のステップ数右側にある三点マークをクリックし、設定を開きます。
設定の中にある「改ページ」をいじります。
なお、このしきい値には「0より大きく、100000以下」が入力できます。つまり100000行までは読み込むことができます。
これにより、256行以上のデータを読み込めるようになります。
なお、100000行読み込めるのにデフォルトでは256行しか読み取れないようになっているのかは分かっていません。
また100000行読み込むことのデメリットが存在しないのかも確認はできておりません。ただ、実際に使っている方はわかるかもしれませんが、Apply to eachの処理速度は非常に遅いです。
256行のデータで1分近くかかります。それが100000行ともなると処理が終わらなくなる可能性があるくらいですかね。
念の為設定を加えた状態で256行以上読み込めるのかを確認したいと思います。
しきい値には500を設定した状態で、テストを実行します
結果は下記になります。
さいごに
今回はエクセルを256行以上読み取る方法を紹介しました。
これにより大量データになっても、ステップ1つで取得ができるようになります。
ただ、上述しましたが、この設定をすることで生じるデメリットはないのかなどは確認できていません。繰り返し処理の処理時間についても並列化できるなら気にならない程度まで早くできる可能性もありますし。。
今回はこのへんで、ではまた!
コメント
コメントを投稿