从asp.net web应用程序访问Interop.office.excel库
我有一个asp.net的Web应用程序,并部署在Web服务器上。 在一个场景中,我有一个固定的格式Excel文件夹中的服务器上的工作表。 在运行时即时通过interop.office.excel
库的帮助下写入单元格。 最初在服务器上没有安装excel,那么我们已经安装了excel,并且从组件服务中给了COM组件充分的权利。 但现在我们正在得到错误。 如何解决这个问题?
检测产品“{90110409-6000-11D3-8CFE-0150048383C9}”,function“OfficeUserData”,组件“{4A31E933-6F67-11D2-AAA2-00A0C90F57B0}”失败。 资源“HKEY_CURRENT_USER \ Software \ ODBC \ ODBC.INI \ MS Access数据库”不存在。
检测到产品“{90110409-6000-11D3-8CFE-0150048383C9}”,function“ExcelUserData”,组件“{8ADD2C96-C8B7-11D1-9C67-0000F81F1B38}”失败。 资源“HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ 11.0 \ Excel \ UserData”不存在。
MS不支持Interop在服务器场景(如ASP.NET)中 。
有很多选项可以在没有Interop的情况下读取/编辑/创buildExcel文件:
MS提供免费的OpenXML SDK V 2.0 – 请参阅http://msdn.microsoft.com/zh-cn/library/bb448854%28office.14%29.aspx (仅限XLSX)
这可以读取+写入MS Office文件(包括Excel)。
另一个免费的选项见http://www.codeproject.com/KB/office/OpenXML.aspx (仅限XLSX)
如果您需要处理较旧的Excel版本(如XLS,而不仅仅是XLSX),渲染,创buildPDF,公式等,那么您可能需要更多的免费和商业库,如ClosedXML (免费,仅限XLSX), EPPlus (免费,仅限XLSX) , Aspose.Cells , SpreadsheetGear , LibXL和Flexcel等。
- 如何在asp.net中将RDLC报告导出为.xlsx格式?
- C# – 从ASP.Netfile upload更新SQL表
- 从ASP.NET导出到Excel会生成使用Excel Viewer无法读取的文件
- HRESULT:0x800A03EC – 它创buildExcel文件时,在我的机器上的问题
- 一些文本在xlsx中缺lessc#asp.net中的文本
- 从HRESULT:0x800A03EC获取exception,同时在Excel工作簿中添加新工作表
- 读取Excel或OpenOffice(.ods)文件使用ActiveXObject(JavaScript)
- 在asp.net mvc上检查上传的excel文件中的非法字符
- 在Excel中使用EPPlus(asp.net)转换为整数