如果有任何链接可以免费为C#的Excel“帮手”类库?

我正在寻找任何可用的免费Excel“助手”类为.NET编写(不必是C#)。 我想评估别人认为是有用的和generics静态(和非静态)辅助方法。 可以针对VSTO或定期的Office自动化,虽然这可能无关紧要。

我想我也应该指出,这个问题不是要求“有什么好的select(或自由select)使用Excel对象模型自动化。我不是真的想链接到SS齿轮等,虽然他们都是伟大的产品这不是问题的目的。

如果我在前面的段落中不够清楚:我不想要这样的答案 – 使用这个免费的(或不是免费的)第三方组件,而不是Excel对象模型代码。

所以基本上我所要求的是用户开发的C#代码库,其中包含VSTO,Office或Excel帮助函数,如用于处理菜单,色带,范围,工作簿,文档,xml的静态方法(例如提到的宅男)。 。

在Excel的Office自动化方面,有一些很好的PowerShell Open XML cmdlet,可以用于PS,或者在宣布PowerTools for Open XML V1.1发布时移植到C#。 此链接所在的Eric White的博客最近更深入地研究了使用Open XML的Excel自动化,如Open XML SpreadsheetML中的Table Markup 。 关于Open XML的注意事项 – 虽然它是许多人首选的方法,但实际上并不需要使用Open XML SDK,只需使用System.IO.Packaging即可访问Excel 2007/2010文件。

另外,经常被忽视的是,VSTO,Open XML和Interop开发所提供的Excel代码片段非常棒。 1,2,3

另外,请查看VB @ http://msdn.microsoft.com/en-us/library/8x19fbw1(v=VS.90).aspx的Excel示例。 当你在安装过程中也selectVB作为一种语言的时候,这些代码会与VS一起安装。

更新:刚刚发现了一个一stream的代码框架(办公室),它有很多伟大的Excel帮手类。 你可以find它: http : //1code.codeplex.com/releases/view/51868 。

VSTO电动工具是与Excel一起使用的一套很好的工具:
http://msdn.microsoft.com/en-us/magazine/dd263100.aspx

ExcelDNA是一个非常酷的项目。 它提供了一种轻量级的方式来从Excel中使用.NET代码,而部署模型比VSTO更容易。 如果你想在.NET中编写UDF,我发现它是VSTO的一个有趣的select。

对于VSTO项目:

http://www.add-in-express.com/

非VSTO,非自动化:

http://www.html-to-pdf.net/excel-library.aspx

注意:这些库都不是免费的。

还有一个名为FileHelpers的软件 ,可以将Excel数据保存为CSV格式,FileHelpers库可以轻松地parsing信息等等,确保它不会被完全吹捧为Excel自动化,但这是一个很好的parsing过程。 如果您正在讨论能够以本地二进制方式处理Excel,那么来自CodeProject的这篇文章可能会有所帮助,这里也是理解底层excel数据存储的BIFF分析器 ,以及CodeProject上的。

用.net 4.0dynamic关键字写Excel自动化就像地狱一样简单。
如果你想intellisense,你可以很容易地写在dynamic调用的C#包装。

UPDATE
自2001年以来,我们正在与Excel自动化(开发财务插件)。从Excel 2000到2010年。

而所有我们知道,当你的代码应该适用于Office的所有版本和服务包时,标准的interop根本不起作用。

我们曾经被定制的互操作库,VSTO版本等打了很多次。一年之后,我们发现只有一个解决scheme可行 – 通过延迟调用(reflection)调用所有的自动化。 即(“记事本代码”) Type.GetTypeFromProgId('Excel.Application').GetMethod('Visible').Invoke(....).

但是代码非常大而且很丑,那么我们只需用从Excel 1:1复制的对象模型来包装那些丑陋的代码即可。 当我们需要新的方法时,我们将它添加到我们的Excel对象模型,并通过后期调用呼叫Excel自动化。

有了新的dynamic关键字,就可以生活在没有包装的情况下,特别是使用Resharper的dynamic支持。

我更喜欢这个:

在CodePlex上的Excel包

它使用的是Open XML,所以不需要在电脑上安装Office(可能或不可能),但是我发现它很容易使用和设置。

我非常喜欢2003/2007格式的NPOI

http://npoi.codeplex.com/

完全独立,易于使用