Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.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#代码激活Excel ComAddin_C#_Ms Office_Office Addins - Fatal编程技术网

从C#代码激活Excel ComAddin

从C#代码激活Excel ComAddin,c#,ms-office,office-addins,C#,Ms Office,Office Addins,事实上,我有一个运行的C#应用程序。 启动时,它运行一个excel实例并将其保存到一个变量: excelApp=new Excel.Application() 然后,我在每个excel的加载项中循环查找我自己创建的添加项: private void getAddin() { const string addinName = "myAddInName"; foreach (Office.COMAddIn addin in excelApp.COMA

事实上,我有一个运行的C#应用程序。
启动时,它运行一个excel实例并将其保存到一个变量:
excelApp=new Excel.Application()

然后,我在每个excel的加载项中循环查找我自己创建的添加项:

    private void getAddin()
    {
        const string addinName = "myAddInName";

        foreach (Office.COMAddIn addin in excelApp.COMAddIns)
            if (addin.Description.ToUpper().Contains(addinName.ToUpper()))
            {
                myAddin = addin;
                return;
            }
    }
问题是,我的插件可能在停用元素列表中。(由于一些碰撞)

然后我必须转到(excel框架上):
文件>选项>加载项>管理>停用元素>实现>“myAddin”>激活

要使我的加载项重新工作(在excel重新启动后)

我尝试使用加载项的属性重新激活它,但在这种情况下,应用程序可能会再次崩溃

            myAddin.Connect = loadAddin;
有人对如何解决它/使用C#?

自动重新激活已禁用的插件有了想法,这应该会有所帮助

我相信你需要这样做

if(!myAddin.Connect)
{
     myAddin.Connect =true;
}
这应该会有所帮助

我相信你需要这样做

if(!myAddin.Connect)
{
     myAddin.Connect =true;
}