【C#】【Excel】Excel を出力する際の注意事項

Excel を出力する際の注意事項

【1】 Excelバージョンに気をつける
【2】 最大行数がある

【1】Excelバージョンに気をつける

 * Excelバージョンに依存しないために、遅延バインディングを利用する(らしい)
参考文献
http://d.hatena.ne.jp/zecl/20080128/p1
http://d.hatena.ne.jp/kurukuru-papa/20100704/1278243371
http://assai-blog.seesaa.net/article/133602438.html

【2】最大行数がある

 * 最大行数があり、その値を超えると例外が発生する
 * その最大行数は、Excelのバージョンにより異なる
 => 業務や客先の環境を確認する必要あり。
Excel2007以前
 →6万5536行
Excel2007以降
 →104万8576行
参考文献
http://itpro.nikkeibp.co.jp/article/NEWS/20060531/239523/

■ パフォーマンスに関する注意点

全般的にパフォーマンスは悪い...
【1】 リソースの開放を行う
【2】 削除はできるだけ行単位で行うようにする

【1】リソースの開放を行う

 * System.Runtime.InteropServices.Marshal.ReleaseComObject()で開放する
 * 途中で落ちる可能性もあるから、try-catchのfinally句で行った方がいい
==【2】削除はできるだけ行単位で行うようにする ==
 O range.sheet.getrange("A1:Z100");
 X range.sheet.getrange("1:100");
参考文献
http://gb.rt-a.org/2012/02/cexcel.html

関連記事

Excel

Excelファイルを扱う ~ 入門編 ~
https://blogs.yahoo.co.jp/dk521123/29610792.html
Excel を PDF化する
https://blogs.yahoo.co.jp/dk521123/30581096.html

ASP.NET MVC

ASP.NET MVC】【VBExcel をダウンロードする [1] ~ NetOffice編 ~
http://blogs.yahoo.co.jp/dk521123/36015198.html