自定义加载项无法正常工作 UI

add-in not working from custom UI

我正在尝试基于此 guidance 使用自定义 UI 创建我的第一个加载项。 (因为我没有 Visual Studio 我正在使用 VBA;Excel 2013 in Windows 7)

为了测试,我刚刚在一个模块中创建了一个子模块:

Sub test()
    MsgBox "test"
End Sub

如指南中所述,我创建了包含 CustomUI.xml 的自定义 UI 文件夹。 CustomUI.xml的内容:

<?xml version="1.0" encoding="utf-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon>
    <tabs>
      <tab id="TestTab" label="Test tab" >
        <group id="TestGroup" label="Test group" >
          <button id="test" visible="true" size="large" 
                  label="Test Sub" 
                  onAction="test" />
        </group>
      </tab>
    </tabs>
  </ribbon>
</customUI>

还添加了
https://msdn.microsoft.com/en-us/library/office/gg597509(v=office.14).aspx
.rels 描述。

现在我已经正确加载了加载项,唯一的问题是单击新创建的功能区项目时,我不断收到以下错误消息(当然,当我从 [=37 启动宏时,宏可以正常工作=]编辑):

我做错了什么?

添加“control As IRibbonControl”作为子例程的参数。

例如,如果您的子程序的名称是“test”,那么

Sub test(control As IRibbonControl)
    'your code goes here
End Sub

一旦您按照建议 Here 合并了 Public Sub test(control As IRibbonControl) 并且如果您仍然收到错误,那么我相信其中一个打开的 Workbooks/Add-In 中还有一些其他代码干扰此代码。

  1. 关闭所有其他打开的工作簿
  2. 检查是否有任何其他已安装的加载项。