範囲を読み込みが途中で終わってしまう

Excelファイルに対し、範囲を読み込みを行い、
データテーブルに値を格納したいのですが、
なぜか読み込みが途中で終わってしまい、
最後までExcelファイルの読み込みができません。
範囲を読み込みの後に待機時間を5秒おいても結果が変わらないのですが、
このアクティビティは制限があるのでしょうか?
ご教示よろしくお願いいたします。

▼参考情報
読み込み対象Excekファイル:10列/531行

これは、どのような事象発生をもって、判断したのでしょう?
特に制限は聞いたことないです。

もしかしたら、EXCELアプリケーションスコープで開いた時に、リンクの最新化とか、マクロの有効化などのダイアログが出ているのかもしれませんね。

可視化オンにして、どう挙動するか、確認してみましょう。

1 Like

範囲を読み込みが終わった後にブレイクポイントを置き、データテーブルの中を確認するためにクリップボードにコピーし、エクセルに張り付け、
元となるエクセルと比較したところ読み込みが最後まで終わっていませんでした。

サイトでDLしたファイルなので、リンクやマクロ設定はされていません・・・
先ほど可視化をオンにして確認しましたが、アプリケーションが閉じられるのが早い感じがしました。

そのEXCELファイル、共有できますか?こちらでもやってみようかと。。。

1 Like

申し訳ありません、社内機密のファイルなので共有は難しいです・・・
ただ先ほどデータテーブルのbyte数を確認したところ、10003byteしか格納されておらず、
端数の3byteは最後に「…」となっておりました。
image
おそらくデータテーブルに10000byteしか格納されないため、起こった事象かと思われます。
データテーブルの制限を10000byte以上にする方法等はご存じでしょうか。

また、同じように再現できるか確認したサンプルをお渡しいたします。
テスト.xlsx (8.4 KB)

こんにちは

Localsパネルのビューアーはすべての情報を出力するわけではないので、今回のケースの確認方法と
してはあまりよくないと思います。

WriteLineやLogMessageあるいは、ブレイクポイントで実行を停止しているなら
Immediateパネルで dt.Rows.Countの様にDataTableの行数を確認してみると
良いように思います。

1 Like

読み込めますねぇ。

範囲を読み込みが途中で終わってしまう.zip (9.1 キロバイト)

読み込んで、CSVに出力するロボでした<m(__)m>

1 Like

イミディエイトを初めて使用したのですが、
確認したところ対象となる530件保持されていました。
image

ということはこちらの件数が正ということでよいのでしょうか?

1 Like

ありがとうございます!
確認してみます!

こんにちは

530件で正しいと思います。

必要に応じて、範囲書き出しやCSV書き出しで出力したものの中身をチェックすると良いかもしれません。

2 Likes

解決できました!
ありがとうございます!

1 Like

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