Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过Windows窗体C将库加载到Excel#_C#_Excel - Fatal编程技术网

C# 通过Windows窗体C将库加载到Excel#

C# 通过Windows窗体C将库加载到Excel#,c#,excel,C#,Excel,这是我的第一个问题,我非常害怕我的答案可能已经在其他帖子上了。但我已经找了好几个小时了,我真的想不起来了 事情是这样的 我正在使用一个windows窗体,非常简单地说,它必须打开某些工作簿并在这些工作簿中运行宏 这些工作簿中的宏使用某些不属于标准excel库的函数。我在一家银行工作,我们有一些专有功能和加载项,每次打开某些exe文件时都会加载这些功能和加载项 我可以通过以下方式启动excel应用程序: Microsoft.Office.Interop.Excel.Application xlAp

这是我的第一个问题,我非常害怕我的答案可能已经在其他帖子上了。但我已经找了好几个小时了,我真的想不起来了

事情是这样的

我正在使用一个windows窗体,非常简单地说,它必须打开某些工作簿并在这些工作簿中运行宏

这些工作簿中的宏使用某些不属于标准excel库的函数。我在一家银行工作,我们有一些专有功能和加载项,每次打开某些exe文件时都会加载这些功能和加载项

我可以通过以下方式启动excel应用程序:

Microsoft.Office.Interop.Excel.Application xlApp = 
            new Microsoft.Office.Interop.Excel.Application();
但这会调用
normal
excel。如何在这个特定的excel实例中添加所需的库

另一种解决方案是使用
System.Diagnostics.Process.Start(“CMD.exe”、“My fancy excel”)

但是这需要花费大量的时间,因为必须为每个工作簿创建一个新实例

需要任何想法或澄清吗


谢谢大家抽出时间,希望我说得够清楚

通过自动化启动Excel时,它不会加载任何加载项。因此,必须使用以下命令显式加载外接程序:

  • 应用程序.RegisterXLL
    (用于.xll加载项),或
  • >代码> AdvIn。添加< /代码> /<代码> Addi.Ung=真/<代码>(适用于XLA或.XLAM外接程序)。

这里有一个关于这个主题的老问题:,一个相关的MSDN博客帖子:,还有另一篇Microsoft支持文章:。

您能详细说明一下库的含义吗?你是说艾丁?运行代码并打开工作簿时会发生什么情况?加载了加载项吗?当我试图打开工作簿时,通常会出现运行宏的提示。但宏在中途停止工作。发生这种情况的原因是,在宏中有一些行,如:application.Run(“某些函数”,Arg1,…,ArgN),其引用在普通excel应用程序实例中不存在。但是,如果我打开excel并加载某些加载项,该函数确实有效。谢谢!我想那正是我想要的。我会通知你的!嗨,Govert,我能够在我的自动化OLE对象中加载某个加载项,这太棒了!您认为也可以将单个.dll文件添加到此对象吗?谢谢