Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.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
Vba 自定义Excel 2013 UI似乎无法工作_Vba_Xaml - Fatal编程技术网

Vba 自定义Excel 2013 UI似乎无法工作

Vba 自定义Excel 2013 UI似乎无法工作,vba,xaml,Vba,Xaml,我在Excel 2013中创建了一个外接程序,我正试图通过Microsoft Office自定义UI编辑器创建的自定义功能区调用该外接程序 我创建了XAML,如下所示: <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui"> <ribbon startFromScratch="false"> <tabs> <tab

我在Excel 2013中创建了一个外接程序,我正试图通过Microsoft Office自定义UI编辑器创建的自定义功能区调用该外接程序

我创建了XAML,如下所示:

  <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
    <ribbon startFromScratch="false">
        <tabs>
            <tab id="customTab" label="TestTab">
                <group id="customGroup" label="TestGroup">
                    <button id="scanStart" label="Scan Test" imageMso="HappyFace" size="large" onAction="Yolo_eventhandler" />
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>
我已检查外接程序是否已安装,并通过在外接程序“onLoad”事件中添加msgbox来确认excel启动时外接程序正在运行。我还可以运行手动添加到功能区的宏。 我收到的错误消息是:“无法运行宏‘Yolo_eventhandler’。该宏可能在此工作簿中不可用,或者可能已禁用所有宏”。 我已检查我的信任设置,并且此加载项所在的文件夹(默认加载项文件夹)是绝对受信任的。 有趣的是,当我将eventhandler代码复制到xlsx文件中的模块时,我还打开了它,它工作得非常好。
有人能建议如何从外接程序正确启动此功能吗?

我设法解决了此问题-我试图从中调用此功能的外接程序中缺少对“Microsoft Office 15.0对象库”的引用。很难找到这个错误,因为功能区不会给我这个错误,只有当我进入外接程序并尝试运行另一个函数时,它才不会编译。非常感谢你的帮助

代码对我来说似乎很好,我在一个现有的外接程序中替换了我的代码,它工作得很好。我通常创建一个名为“Ribbon”的模块来放置回调函数。您的外接程序中的
Yolo\u eventhandler
在哪里?您还可以在打开后通过添加一个
OnLoad
回调来检查功能区是否正确加载谢谢-我也有这个错误,但我的问题是VB没有编译。正如您所建议的,独立运行它表明了这一点。助教
Sub Yolo_eventhandler(control As IRibbonControl)
MsgBox "YOLO"
End Sub