假设您有两个工作簿,一个名为“MyWorkbook”,另一个名为“PatchMyWorkbook”。两个工作簿在保存时都打开。 “PatchMyWorkbook”有一个宏,用于添加按钮并将“MyWorkbook”的现有宏分配给“MyWorkbook” “MyWorkbook”中的现有宏称为“PrintPage”
Windows(“MyWorkbook”).Activate
Sheets("Sheet1").Activate
ActiveSheet.Buttons.Add(665.25, 43.5, 89.25, 45).Select
Selection.OnAction = "PrintPage"
当“PatchMyWorkbook”代码执行时,这不会导致错误,但新添加的按钮宏将指向“'PatchMyWorkbook'!PrintPage”,而不仅仅是“MyWorkbook”的“PrintPage”
问题:如何为跨工作簿的宏按钮设置“OnAction”,以便宏将指向当前工作簿而不是创建宏的工作簿?
在我看来.OnAction property
应该这样设置:
Selection.OnAction = myWbk.Name & "!PrintPage"
顺便说一句,您的评论中的想法(下面稍作修改):
Selection.OnAction = "'" & myWbk.Name & "'" & "!" & "PrintPage"
也为我工作(Excel 2010)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)