Excel Interop アセンブリを使用して、定数を持つすべてのセルの数を見つけようとしています。
小さなファイルでは、これはうまく機能します。ただし、大きなファイルでは Excel がクラッシュします。
206963 行 9 列のファイルで試してみたところ、Excel がクラッシュしました。
- 回避策を知っている人はいますか?
- SpecialCells関数の制限事項と使用すべきでない場合のリストはありますか?
以下は私のコードです:
public static int getConstantCount(Range myRange) //myRange = myWorksheet.UsedRange
{
try
{
return myRange.SpecialCells(XlCellType.xlCellTypeConstants).Count;
}
catch (System.Runtime.InteropServices.COMException ex)
{
return 0;
}
}
これは、相互運用アセンブリを使用せずに Excel 自体でも発生することに気付きました。https://superuser.com/questions/632856/excel-go-to-special-crashes-on-large-fileを見てください