2017-04-14 84 views
0

我已经用一个执行邮件合并的宏做了一个表单文件。我不希望用户从菜单中运行它,我希望这是可移植的。如果在每个用户的功能区或快速命令菜单上都有按钮出现的方式,我不太熟悉它。Word VBA:让宏易于运行

所以我把一个按钮放在文档本身。不幸的是,每个创建的表单都有相同的按钮。我想我可以写代码来删除每一个,但我认为这会很慢。

有没有办法将快捷键分配给现有的宏,并让它驻留在文档中?

回答

2

我不得不实施一些非常类似于你指的10名员工的东西。我的解决方案(绝不像需要的那样便于移植)是将我的Normal模板中的宏和表单导出到其他用户,我将它与Ribbon定制相结合,并且运行良好。不幸的是,当需要更改时,我必须单独跋涉到每个人的机器。

我建议你坚持你的解决方案,合并完成后删除按钮。这里有一些代码来帮助:

Sub DeleteCommandButton() 
    For Each o In ActiveDocument.InlineShapes 
     If o.OLEFormat.Object.Name = "CommandButton1" Then 
      o.Delete 
     End If 
    Next 
End Sub 

祝你好运,希望这会有所帮助。