2014-05-10 120 views
1

其目的是编写一个VBA来检查自定义功能区按钮标签是否已更改。 Workbook_Open事件发生后,vba将获得自定义功能区特定按钮的标签值,并将其与VBA中的硬编码值进行比较。如果他们不一样,vba会关闭工作簿。保护Excel自定义UI功能区

举例来说,你可以得到内置命令的标签与此

MsgBox Application.CommandBars.GetLabelMso("PasteSpecialDialog") 

但如何值将自定义功能区按钮的标签的价值? GetLabel不会完成这项工作。

谢谢。

回答

0

在excel中循环遍历每个命令栏。

For Each bar In Application.CommandBars 
if condition = true then 
    'Your code here 

end if 
Next 
+0

嗨Prabhat,谢谢。这似乎可行。让我测试一下并回复你。 – Chen

+0

我无法识别自定义功能区和控件的对象引用。 – Chen

+1

看看这个。 http://msdn.microsoft.com/en-us/library/office/aa141001%28v=office.10%29.aspx –