为COM Interop添加一个.NET EXE作为VBA参考(在Excel中)

如何在Excel(VBA)中使用我的C#项目,当它是可执行forms?

在Visual Studio中,如果我转到我的项目设置并将“输出types”更改为“类库”,则可以成功添加对Excel VBA中的项目的引用(通过浏览到参考部分中的DLL)。

但是,当我的“输出types”设置为“Windows应用程序”,如果我试图添加引用(在Excel VBA中)到新生成的EXE文件,我收到以下错误:

无法添加对指定文件的引用

如何在Excel VBA中引用我的.NET EXE?

(我使用exe而不是DLL的目的是让我的应用程序既可以用作Windows应用程序,也可以用作COM对象)

不知道确切的细节,我简单地猜测一个DLL导出Excel所需的函数。 EXE通常不会导出任何函数。

关于.NET的好处是,您可以轻松创build模块化应用程序。 那么为什么不把核心function放到一个DLL中,并创build一个可以使用这个function的应用程序呢?

这样你就可以使用VBA中的DLL,并且还有一个可以独立使用的应用程序。