操纵Excel的XLS和XLSX在.NET

问题描述:

我们需要在一个asp.net网页更新Excel文件(或者XLS或XLSX)的一些细胞。依赖于其他细胞会得到和自动更新。操纵Excel的XLS和XLSX在.NET

我们曾尝试使用:Excel的互操作,但我们遇到的服务器上开发后,太多的问题:安装Office,安全性和添加更多的权限NETWORK SERVICE的错误,有时...它的工作原理。所以它不稳定。

我们正在寻找一个开源库,用于操控在asp.net Excel文件(XLS或XLSX)。你能推荐一些好的吗?

正如你已经发现:在服务器上使用互操作不被微软支持 - 看http://support.microsoft.com/default.aspx?scid=kb;EN-US;q257757#kb2

由于Windows Vista的MS介绍了几种与安全相关的措施,防止Windows服务从做“台式机一样的”事情......这意味着你将不得不绕过几个保安措施,以得到它的工作(不推荐!)。

为了应对Excel文件没有在服务器方案需要任何办公室等有多种选择(免费和商业)那里:

我可以推荐Aspose.CellsFlexcel ......没有尝试SpreadsheetGear,但听到+读了很多关于它的好东西...

自由选项(虽然只适用于较新的xlsx格式!)是例如OpenXML 2 from MSEPPlus

你可以试试这个库:

http://code.google.com/p/excellibrary/

或者您可以使用NPOI改变Excel文件,它不需要办公室安装目录,并于Excel互操作更加简单。

我们已经使用http://www.gemboxsoftware.com/spreadsheet/overview很高兴与的可能性和性能

+1

我得到了一个错误它不明白的结构:读取错误:文件是不是有效的OLE2复合文件。 – olidev 2012-02-09 13:05:47

如果您正在使用Excel的版本大于2003,您可能会发现ClosedXML有所帮助:

http://closedxml.codeplex.com/