2016-02-17 42 views
1

我正在使用visual studio 2013并希望创建一个彩色的excel文件。我使用此命名空间: using Microsoft.Office.Tools.Excel.Extensions;在winform应用程序中缺少程序集

,并得到这个错误:

The type or namespace name 'Tools' does not exist in the namespace 'Microsoft.Office' (are you missing an assembly reference?)

有谁知道如何解决呢?

+1

可能出现[microsoft.office.tools.excel.dll安装位置?](http://stackoverflow.com/questions/6190667/where-the-microsoft-office-tools-excel-dll-is -installed) –

+0

你刚刚在你的代码中包含using语句,还是你还引用了所需的VSTO程序集? –

回答

1

您还需要添加对Microsoft Office 12.0 Object Libray的引用,以获取Office Interop的基本支持。

AddReference - >。NET-> Microsoft.Office.Interop.Excel。

0

您只能在VSTO项目中使用Microsoft.Office.Tools命名空间。否则,您不能使用它们。如果您尚未创建VSTO文档级定制或加载项,则不应尝试使用此名称空间。或VSTO文档。

对于直接“互操作”,您需要Microsoft.Office.Interop命名空间,例如Microsoft.Office.Interop.Excel和Microsoft.Office.Interop.Core。

为了使用这些,您需要参考PIA,这使得.NET可以与本地Office .tlb(COM库)进行通信。 Office将PIA安装在GAC中,您可以随时通过“添加引用”对话框中的“COM”选项卡访问它们。

Visual Studio的某些版本还在Visual Studio文件夹中安装了一组PIA。这些将显示在添加引用的NET选项卡中。但是你需要小心,因为VS只会为VS发布时的当前版本的Office安装PIA。这可能不是您的开发人员计算机上安装的Office版本。

由于这个原因,我几乎总是要从COM选项卡添加引用,而不是添加引用的NET选项卡。