「インデックスが配列の境界外」エラーで範囲の読み込みができない

お世話になっております。

Excelのシート内にある表(明細)を読み取ろうとしているのですが、
範囲の読み込みアクティビティで「範囲を読み込み: Index was outside the bounds of the array.」とエラーになってしまいます。

試しに、全く同じフォーム構成・同じ値で別Excelを作成したのですが、そちらは読み取ることができています。本番用のフォームは取引先から送られてくるもので、一部非表示やロックがかかっている部分があるのですが、それが影響していたりするでしょうか?

フローは昨日ご相談させていただいたTopicを元に作成しています。

よろしくお願いいたします。

こんにちは

その可能性がありますので、エラー発生時にローカルパネルでCurrentItemの中身がどのようになっているか確認できますでしょうか?

Hi @y.c

Could you try the below one,

Excel.Sheet(currentItem.Name.toString).Range("B12:H50")

If the above will not work then the range in the Excel that you have given is exceeded, open the Excel file and check the values in the Excel are upto H50 cell or not.

And one more thing do you have inserted the read range activity inside the Use excel file activity or you directly used Read range. Give me some clarification on this.

Hope it helps!!

1 Like

こんにちは

もし上記の方法で非表示シート等で問題が発生しているようでしたら
繰り返し(EXCELの各シート)アクティビティを使った以下試せますでしょうか?

Sample
Sample20240129-3 (2).zip (17.3 KB)

Yoichiさん、いつもありがとうございます。

CurrentItemはちゃんと最初のシート名が取れていました。
改めて確認したところ、読み取る対象のシート自体は非表示になっておらず、今回の読み取り範囲(B12:H500)も非表示列は含まないようにしているのですが、編集できないようにだけロックがかかっていました。

後述いただいた、繰り返し(EXCELの各シート)アクティビティでも試してみます。

こんにちは

こちらが問題かもしれません。Workbookの方の範囲読み込でためしてみてはと思います。

Sample
Sample20240129-3v3.zip (16.0 KB)

ありがとうございます。
Workbookに変えたら読み込みに成功しました :joy:
本当に助かりました!

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.