PR(記事内にアフィリエイト広告が含まれています)
スポンサーリンク
C#

C#でExcelの行を削除できない場合

C#のClosedXMLで、Excelの行を削除しようとすると、たった一行なのに異様に時間がかかった挙げ句、アウトオブメモリーになるという事象に悩まされていました。

sheet.Row(1).Delete();

あまりにも簡単な構文だし、構文ミスしてたらそもそもビルドエラーになるので、かなり悩んでしまいました。
こういう場合に考えるべきことは、その行を削除した時に、計算式や条件付き書式などにより、他セルに影響が多数出ないか、という点でしょう。
今回の場合、ためしに条件付き書式をシートから全削除(ルールのクリア>シート全体からルールをクリア、で一操作で可能)してから行削除を試したところ、即座に削除処理が終わりました。

コメント

タイトルとURLをコピーしました