用于学习c#Excel的资源interop

什么是一些资源,将帮助我快速运行在C#中的Excel互操作?

Ken Getz 从Visual Studio 2005开发人员的angular度了解Excel对象模型详细介绍了Excel对象模型。 代码示例都在VB.NET和C#中。

一些重要的注意事项覆盖在C#和VBA:如油和水 ,也由肯Getz。

我也会看到这篇文章: 如何使用Visual C#.NET构buildOffice COM加载项 。

HTH …

1)首先; 下载Office Interop程序集 ,您将从中访问Excel interop中的所有对象,属性和方法以及对项目的适当引用。 注意:任何你打算运行代码的机器都需要安装这些程序集。 您可以将它们包含在安装包中,也可以包含.NET Framework 1.1,所以如果您的客户端安装了它们,它们可能会包含interop程序集。

2)在MSDN上有丰富的知识…几乎所有你将要使用的对象和方法在那里都会有很好的logging。

3) 注意:关于在C#中使用Interop的一个奇怪的小问题是,您必须手动为互操作调用提供“缺失”引用…即,如果在VBA中使用函数(如果您习惯于这样做)为3个参数,最后两个是可选的,你可以在VBA(即MyMethod argumentOne)“离开它们”… 这不工作从.NET这是一个困惑我一会儿,当我开始使用互操作程序集 您必须像这样手动创build一个缺less的对象(例如来自Word Interop,但是相同的主体适用于Excel或任何其他Office Interop程序包(并且还必须装入一些参数并通过ref传递它们):

object missing = System.Reflection.Missing.Value; string somestring = "string"; object refstring = (object)s; wrd.Selection.Hyperlinks.Add(wrd.Selection.Range, **ref refstring, ref missing, ref missing, ref missing, ref missing**); 

我希望有帮助。

如果您正在学习Excel对象模型,VBA帮助是相当不错的。

您可以使用“主互操作程序集”来使用Excel

MSDN总是值得一读。

通过录制一个macros(在Excel中)并分析发生的事情,你可以学到很多东西。

我的主要编程语言是C#,但为了与Excel(或其他Office / COM对象)通讯,我总是使用VB.Net。 这使得从VBA(logging)转移到.Net更容易。

VB.Net使后期绑定更容易。 首先我使用早期绑定(让我知道Intellisense),然后我改变我的types为对象,所以我不再依赖于特定版本的Office了。

这里有一个体面的文章,有一些有用的例子。