ここでは、NPOI でエクセルファイルを作成するサンプルコードを掲載しています。Excel2007 以降のフォーマットである xlsx および Excel2003 までの xls 形式のいずれのファイルにも対応しています。
スポンサーリンク
NPOI 入門: エクセルファイルを作成する
NPOI を使用してエクセルファイルを作成する簡単なサンプルコードになります。詳細はサンプル内のコメントを参照ください。
C#
//using NPOI.HSSF.UserModel; //using NPOI.SS.UserModel; //using NPOI.XSSF.UserModel; // Excelのブックを作成(Office2007以降の形式) XSSFWorkbook bookObj = new XSSFWorkbook(); //// Excel2003 形式で作成する場合は、以下 //HSSFWorkbook bookObj = new HSSFWorkbook(); // シート名を指定してシートを作成 ISheet sheetObj = bookObj.CreateSheet("大石内蔵助"); // 10行3列分のセルに値を書き込む for (int i = 0; i< 10;i++) { // 行を作成する IRow rowObj = sheetObj.CreateRow(i); for (int j = 0; j< 3; j++) { // セルを作成する ICell cellObj = rowObj.CreateCell(j); // 作成したセルに値を設定する cellObj.SetCellValue(i.ToString() + "-" + j.ToString()); } } // 保存するエクセルファイルのパス string filePath = @"/path/to/excel.xlsx"; // エクセルファイルを作成 // 作成したらさっさと閉じる using (FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Write)) { bookObj.Write(fs); }
メモ:
Excel2013 で作成したファイルで確認したのみの情報ですが、NPOI でエクセルファイルを読み込んで、元ファイルに上書きするとチョイチョイ、エクセルファイルが破壊されてしまいます。NPOI ライブラリの使い方が間違っているだけの可能性もありますが、どことなく不安です。
もちろん、NPOI は凄いし便利だと思います