为ExcelDna .xll插件加载自定义功能区

时间:2016-08-01 04:05:06

标签: c# excel ribbon udf excel-dna

我有一个Visual Studio项目来创建 .xll 插件。

在该项目中,我有一个 Main.cs 文件和一个 Functions.cs 文件。

Functions.cs 文件存储将在Excel中使用的UDF。

我有另一个项目为excel创建一个功能区。该项目中包含 Ribbon.xml Ribbon.cs 文件。我将这2个文件移到 .xll 项目中。

但我不知道该怎么办,以便当用户将 .xll 文件安装到他们的Excel时,自定义功能区选项卡也会显示。

顺便说一下,我是一名初学者,而且我是为实习而做的。所以要么我真的找不到任何讨论,要么我不明白人们在讨论什么。因此,我为您提出的问题很难道歉。

1 个答案:

答案 0 :(得分:1)

要向Excel-DNA加载项添加功能区,您需要添加一个派生自ExcelDna.Integration.CutomUI.ExcelRibbon的公共类。加载外接程序时,Excel-DNA将查找并实例化此类型的对象。

要提供xml,请覆盖GetCustomUI(...)方法,其他回调是此类中的公共方法。

Excel-DNA还支持将功能区xml放在.dna文件中(这只是实现GetCustomUI(...)的替代方法)。您在GitHub上找到的示例使用此方法,因为在制作单个文件示例时它更容易一些。 (示例如下:https://github.com/Excel-DNA/ExcelDna/blob/master/Distribution/Samples/Ribbon/TestCSharp.dna

有关xml架构和回调函数签名的文档,您可以查看MSDN:http://msdn.microsoft.com/en-us/library/aa338202(office.12).aspx(3部分)