使用ASP.NET中的动态格式导出excel

时间:2015-04-07 14:58:40

标签: asp.net export-to-excel

我正在使用ASP.NET 4.0网站。我想从网站将数据从数据库导出到excel(2013 Xlsx文件)。

我不想使用Microsoft Interop excel dll,因为它需要在网络服务器上使用excel。

我想将数据导出到excel(2013 Xlsx文件)并动态格式化excel单元格。 (字体,颜色编码,合并单元格和计算)

如何根据没有Interop dll的单元格中的值动态格式化excel单元格?任何有关Excel格式的建议或链接都​​会有所帮助。

由于 阿肖克

2 个答案:

答案 0 :(得分:1)

EPPLUS做你需要的东西,配置是免费且相对轻松的。包含的示例可帮助您入门。

答案 1 :(得分:1)

您也可以使用EasyXLS

检查此样本以便开始。它将指导您如何导出到xlsx,格式化和合并单元格:

http://www.easyxls.com/manual/FAQ/export-to-excel-in-dot-net.html

为了计算公式,请使用类似的代码:

//Create the Excel file and one sheet
ExcelDocument workbook = new ExcelDocument(); 
ExcelWorksheet xlsWorksheet = new ExcelWorksheet("Sheet1"); 
workbook.easy_addWorksheet(xlsWorksheet); 

// Adding some data to sheet 
ExcelTable xlsTable = xlsWorksheet.easy_getExcelTable(); 
xlsTable.easy_getCell(0,0).setValue("1"); 
xlsTable.easy_getCell(1,0).setValue("2"); 
xlsTable.easy_getCell(2,0).setValue("3"); 

//Set a formula on a cell
xlsTable.easy_getCell(3,0).setValue("=SUM(A1:A3)");

//Call the method used to compute the formulas 
String sError = xlsWorksheet.easy_computeFormulas(xls, true);

//Display the formula
Console.WriteLine("The result of the formula entered at position A4 is: " + 
           xlsTable.easy_getCell(3,0).getFormulaResultValue());