我正在尝试制定一个解决方案,以跨工作簿分享我的大部分VBA代码库。这涉及创建一个包含共享模块和文件的.xlam
文件。班级(+各自的工厂)。
我愿意使用Office 2007的精彩RibbonUI,并让.xlam
文件声明一个自定义标签(让我们为了参数而称之为MyTab
)。如果用户具有特定权限(我通过VBA管理),我需要MyTab
才显示一些元素。
除此之外,我希望我的其他工作簿能够将内容添加到MyTab
中,这些内容也可能包含动态元素(使用VBA)。
我面临的问题是,每当我遇到工作簿引用AddIn.xlam
并声明动态功能区元素的情况时,Excel会尝试一次刷新所有内容,从而在两个单独的线程中调用VBA代码(我猜),最终失败了(因为VBA在Excel中是单线程强制的),并生成空白对话框,只有“400”写在那些和两个按钮“确定”和“帮助”。
有人有过如何最好地解决这个问题的经验吗?
答案 0 :(得分:0)
您是否尝试过设置Application.MultiThreadedCalculation = False
。
我相信这会纠正你的问题。