透過NPOI 插鍵進行匯出excel
利用NPOI 匯出Excel
首先直接放上程式碼,fileName主要是指我們放的檔案路徑在哪
並且xsswokbook 以及 sheet 初始化
string fileName = @"C:\入庫單號 WI" + WI_NO + ".xlsx";
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = (XSSFSheet)workbook.CreateSheet("Sheet1");
int count = 0;
//列
for (int i = 0; i < (Array.Count / 8); i++)
{
XSSFRow row = (XSSFRow)sheet.CreateRow(i);
for (int k = 0; k < 8; k++)
{
for (int j = count; j < WIUPB.Count; j++)
{
XSSFCell cell = (XSSFCell)row.CreateCell(j);
sheet.GetRow(i).CreateCell(k).SetCellValue(WIUPB[j].ToString());
}
}
FileStream file = new FileStream(fileName, FileMode.Create, System.IO.FileAccess.Write);//產生檔案
workbook.Write(file);
file.Close();
塞值之後 FileStream 為產生檔案 (FileMode.Create)
並且將workbook寫到file裡面即可完成。
本來我的程式碼是利用HSSFWorkbook 但今天突然試一試發現怎麼多個檔案要匯出時報錯呢!!
Invalid column index (256). Allowable column range for BIFF8 is (0..255) or ('A'..'IV') 错误的解决办法
查了網路資訊後才知道原來HSSF 是Office 2007 它指支援256列,如果你超過它就會報錯,因此改寫成XSSF 可以支援最多16384列
下次就不會找這麼久啦~~
參考資料:
1. http://www.cnblogs.com/jRoger/p/4602239.html