用C#创建一个Excel加载项应用程序
本文关键字:一个 Excel 加载项 应用程序 创建 | 更新日期: 2023-09-27 18:20:48
我想创建一个Excel加载项。但我希望它有一个特殊的行为。
然后问题是,我开发的Excel加载项停留在Excel中。即使我从Windows运行普通Excel实例。。。
因此,更准确地说,我想要的是一个Excel加载项,它只有在我自己的C#应用程序启动时才会出现在Excel的功能区中。
我该怎么做?
行为将是:
- 运行我的C#应用程序
- 我的C#应用程序调用一个新的Excel实例
- 我的C#应用程序将一个新选项卡(及其元素)添加到此Excel实例的功能区
- 我的C#应用程序添加绑定到选项卡元素的操作
- Excel的实例正在关闭>删除所有添加的组件、函数、方法
- 关闭我的C#应用程序
这里有一个很好的教程:http://www.add-in-express.com/free-addins/net-excel-addin.php
编辑:
你有没有考虑过只禁用加载项,然后每当你用后台运行的服务器启动应用程序时重新启用它,当excel关闭时,就会禁用加载项?
这是我在这里找到的一些卸载代码:
private void UnloadBadAddins(bool unloadAddin)
{
const string badAddin = "iManage Excel2000 integration (Ver 1.3)";
foreach(Office.COMAddIn addin in this.ExcelApp.COMAddIns)
{
if (addin.Description.ToUpper().Contains(badAddin.ToUpper()))
{
if (addin.Connect == unloadAddin)
{
addin.Connect = !unloadAddin;
return;
}
}
}
}
我在Microsoft.Office.Interop.Excel.Application
类上发现了以下两个属性:
var excel = new Application();
excel.AddIns
excel.AddIns2
也许这些可以帮助您在应用程序运行期间以编程方式添加/删除加载项?