gpt4 book ai didi

excel - "Run-time error ' 1004 ' Cannot edit a macro on a hidden workbook. Unhide the workbook using the Unhide command"在功能区 XML 中使用 "onLoad"时

转载 作者:行者123 更新时间:2023-12-04 20:55:31 26 4
gpt4 key购买 nike

我感觉我错误地使用了“onLoad”回调。基本上我要做的是在我的自定义功能区加载后立即在 VBA 中运行一些代码(位于我创建的加载项上)。

这是 XML 代码:

<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="spRibbon_onLoad">

这是 VBA 代码:

这是一个全局声明:
Dim grxIRibbonUI

这是我试图运行的代码:
Sub spRibbon_onLoad(ribbon As IRibbonUI)
Set grxIRibbonUI = ribbon
Call spCode 'this is the code I'm attempting to run
End Sub

问题是,如果我尝试打开现有的工作簿(当没有打开其他 excel 实例时),我会收到以下错误:

Run-time error '1004': Cannot edit a macro on a hidden workbook. Unhide the workbook using the Unhide command.



然后我必须在错误上选择两次“结束”按钮,因为它会弹出两次。

我想我可以理解为什么它会抛出该错误,我的自定义加载项尚未加载自定义功能区,但由于主功能区已加载,它正在尝试运行它看不到的宏。但是,如果我已经打开了一个工作簿并且我的自定义功能区已经可见,它根本不会运行代码。任何建议,将不胜感激。

最佳答案

经过更多研究后,我发现只需一秒钟的简单时间延迟即可完成此操作。这不完全是我想要的,但它有效,所以我决定回答我自己的问题。

Sub spRibbon_onLoad(ribbon As IRibbonUI)
Application.OnTime Now + TimeValue("00:00:01"), "spCode"
End Sub

关于excel - "Run-time error ' 1004 ' Cannot edit a macro on a hidden workbook. Unhide the workbook using the Unhide command"在功能区 XML 中使用 "onLoad"时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48655916/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com