我需要从asp.net网页访问宏启用和外部源excel 2003计算器。 Excel接受少量值并在计算后返回一些数字。 用户不允许从办公室修改/访问excel,因此需要访问web才能使用excel计算器功能,用户在网页上输入值并传递给Excel并在网页上显示结果。
我尝试使用sharepoint excel服务,因为excel文件中的宏和外部源无法使用excel服务功能。 如果有人能指出我正确的方向,我将不胜感激
答案 0 :(得分:0)
您可以尝试EasyXLS Excel library。它可以集成在ASP.NET网页中。它读取xls文件宏启用文件,并包含一个类似于MS Excel中的计算器。
// Create an instance of the class that read XLS files
ExcelDocument workbook = new ExcelDocument();
// Read XLS file
workbook.easy_LoadXLSFile("Excel macro enabled.xls");
// Get a sheet and compute the formulas
xlsWorksheet = (ExcelWorksheet) workbook .easy_getSheetAt(0);
String sError = xlsWorksheet.easy_computeFormulas(workbook, true);
// Check the result of the formula
String result = xlsWorksheet.easy_getExcelTable().easy_getCell(3,0).getFormulaResultValue();
要显示现有值并输入以后的其他值,您可以使用以下代码:
DataSet ds = workbook.easy_ReadExcelWorksheet_AsDataSet(xlsWorksheet);
并将DataTable设置为GridView的数据源,例如: http://www.easyxls.com/manual/FAQ/import-excel-to-gridview.html
EasyXLS还有一些开源代码(更复杂),用于在ASP.NET页面中显示可根据需要调整的Excel文件:
http://www.easyxls.com/excel-to-gridview