首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Excel 2016 - QAT和宏

Excel 2016 - QAT和宏
EN

Stack Overflow用户
提问于 2018-05-23 11:04:16
回答 1查看 165关注 0票数 1

我构建了一些宏,并将VBA工程另存为.xlam (Excel Add In)文件。当我转到Excel >文件>选项>快速访问工具栏(QAT)>从左侧下拉菜单中选择‘宏’时,宏(Public Sub)是可见的。然后,我可以将宏添加到QAT中,这样用户就可以单击工具图标来运行这些宏。

我观察到一种非常奇怪的行为。这是它以前的样子,一切都是正常的。

这是它想要的东西。事情开始变得奇怪了。

唯一的区别是我将Sub的参数类型从内置变量类型更改为自定义类类型。但是我还没有运行宏。我只是在输入密码。但是Excel改变了另外两个我没有编辑的宏的显示(宏名是Check()和CheckAndFix())。

所以问题是:

1)当我输入代码时,为什么Excel GUI显示不同的格式?这似乎取决于我输入的变量类型?我不知道IntelliSense对Excel的用户界面有如此大的影响。

2)为什么Excel更改了另外两个我没有接触的Subs的显示?

顺便说一句,即使在计算机重新启动后,此行为也是可重现的。也就是说,我可以在String和cSettings之间改变参数类型,并观察到宏列表格式也发生了相应的变化。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-05-24 01:43:36

我终于想明白了!

只要代码引用了未定义的数据类型,QAT定制就不会起作用。症状包括:

1)您将看到工作簿名称是列表中宏名称的前缀。在正常情况下,您只会看到宏名称。

2)如果将宏关联到QAT按钮。那个按钮不起作用。每当您单击该按钮时,它都会显示“无法运行宏”‘XXX“。该宏可能在此工作簿中不可用,或者所有宏都可能被禁用”。这是误导性的,因为宏在那里,所有的宏都是允许的。

你可能会问--“为什么你的代码引用了一些未定义的数据类型?”这是因为我的代码引用了一些额外的数据类型(如字典),这些数据类型需要额外的库(如"Microsoft Scripting Runtime“)。如果不手动配置库引用,数据类型将变为”未定义“。

我很惊讶程序没有抛出编译错误或运行时错误。相反,它给出了消息“宏可能不适用于此工作簿”。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50479207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档