前提
言語:c#
closedxmlでテンプレートファイルを読み込み、DBのデータを書き込みファイルを保存する。
テンプレートファイルのサイズが5MBほどでマクロが入っているため、拡張子がxlsm。
実現したいこと
ファイルの読み込み、保存の速度をそれぞれ2秒くらいで終了させたい。
発生している問題・エラーメッセージ
現状ファイルの読み込み、ファイルの保存にそれぞれ15秒ほどかかっている。
該当のソースコード
c#
1// 開くだけで15秒 2var wb = new XLWorkbook(テンプレートファイルのパス); 3 4//wbへの書き込み処理(1秒もかからず完了。) 5 6// 保存にも15秒 7wb.SaveAs(ファイル保存先のパス); 8
試したこと
ファイルを開く際の引数にLoadOptionsを追加し、
EventTrackingをDisabled、RecalculateAllFormulasをfalseにしたが、変化なし。
ファイルを保存する際の引数にSaveOptionsを追加し、
SaveOptionsのプロパティを全てをfalseにしたが、変化なし。
テンプレートファイルの中身を一部削除し、ファイルサイズを500KBまで削減した場合
読み込み、保存にそれぞれ1秒かからず終了しました。
そのため、ファイルサイズが原因だとは分かったのですが、テンプレートファイルの中身を削除して
ファイルサイズを少なくすることができません。
何か解決案などがあれば、ご教示ください。
回答2件
あなたの回答
tips
プレビュー