2023.02.14 シートを非表示にできない
次のコードで何も問題なく、シートの非表示ができていた。
ws = wb.Worksheets[2];
ws.Hidden = eWorkSheetHidden.Hidden;
しかし、ある時点で突然動作しなくなった。そこで次のコードのように VeryHidden を使用したところ、問題が解決した。
ws = wb.Worksheets[2];
ws.Hidden = eWorkSheetHidden.VeryHidden;
2022.06.23 エラー Row cannot be less than 1.
EPPLUS 4.5.3.3 を使用して開発している。
ワークシートに対して、InsertRow を行うと、エラー「Row cannot be less than 1.」が発生した。
当然ながら、マイナスになるような数値は指定してない。
調査したところ、下記の記述を発見した。
Row cannot be less than 1. Parameter name: value · Issue #39 · EPPlusSoftware/EPPlus · GitHub
既知の問題で、最新版では解決済みのようだ。しかし、諸事情あって、バージョン 5 にアップグレードはできない。
そこで、一度、EPPLUS をアンインストールしてみた。しかし、解決せず。
それにしても変だった。それならば、すでに稼働中の他のプロジェクトでもエラーが発生しているはず。
それならば、同じプロジェクトの他で実行している箇所はどうだろう?と確認したところ、問題なく動作した。
ということは、エラーが発生している Excel ブックに問題があるのではと考えた。以前にも Excel が途中で異常終了した状態のファイルであったため、修復状態では EPLUS が実行できなかった。
今回のファイルを調べてみたが、特段壊れている様子はなった。そこで、ファイルの検査を行い、改めて保存し直したところ、なんとうまくいった。