使用asp.net访问网页上的宏启用Excel

时间:2015-01-29 04:08:38

标签: asp.net excel

我需要从asp.net网页访问宏启用和外部源excel 2003计算器。 Excel接受少量值并在计算后返回一些数字。 用户不允许从办公室修改/访问excel,因此需要访问web才能使用excel计算器功能,用户在网页上输入值并传递给Excel并在网页上显示结果。

我尝试使用sharepoint excel服务,因为excel文件中的宏和外部源无法使用excel服务功能。 如果有人能指出我正确的方向,我将不胜感激

1 个答案:

答案 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