打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
能够修改Word命令的VBA代码

在WORD中,我们可以通过修改WORD命令的方法,来方便地为WORD控件指定用户自定义的过程,完成或者转移(禁用)相应的内置方式.它的原理是利用相应宏名来置换过程的方法.在下面的三个部分中,我们可以体会其中的相同点与不同点。

  Sub Example()

  Dim i As CommandBarControl

  For Each i In Application.CommandBars.FindControls

  If i.ID = 4 Then

  i.OnAction = "MySub" ’指定宏名

  End If

  Next

  End Sub

  Sub ResetSub()

  Dim i As CommandBarControl

  For Each i In Application.CommandBars.FindControls

  If i.ID = 4 Then ‘ID=4 ‘相当于CTRL+P(文件/打印)

  i.OnAction = "" ’恢复原有ID功能

  End If

  Next

  End Sub

  Private Sub Document_Close()

  ResetSub ’关闭文档后恢复

  End Sub

  Private Sub Document_Open()

  Example ‘修改

  End Sub

  以上为第一部分,以下为第二部分:

  Sub FilePrint()

  MySub

  End Sub

  Sub MySub()

  MsgBox "不能使用打印功能!"

  End Sub

  该过程为公用部分

  简析:在EXCEL中,我们只能通过FindControls(ID)的方法为原有程序修改命令指定宏过程;在WORD中,我们也可能通过该方法进行;但如果我们采取第二部分的话,更为简单,这就是所谓的修改WORD命令.当然一个名为MySub的过程可以省略,直接写在FilePrint宏中。以下为实用修改WORD命令的一个例子(该例子放在自定义模板中)

  Sub FilePrint()’修改WORD命令(文件/打印:CTRL+P)

  Dim Pc As Integer, Var As Integer

  With Application.Dialogs(wdDialogFilePrint)

  If .Show = -1 Then

  Pc = .NumCopies ‘取得打印份数

  Var = Me.Variables("PrintPageCount").Value ‘延续以前的打印份数

  Me.Variables("PrintPageCount").Value = Pc + Var ‘至今共打印的张数

  Me.Save ‘保存

  MsgBox "目前累计打印份数为" & Me.Variables("PrintPageCount").Value

  End If

  End With

  End Sub

  Sub FilePrintDefault’修改WORD命令(常用工具栏/打印活动文档)

  ActiveDocument.PrintOut ‘默认打印

  Me.Variables("PrintPageCount").Value = _

  Me.Variables("PrintPageCount").Value + 1

  Me.Save ‘保存

  MsgBox "目前累计打印份数为" & Me.Variables("PrintPageCount").Value

  End Sub

  Private Sub Document_Open()

  On Error Resume Next

  Me.Variables.Add Name:="PrintPageCount" ‘预定一个文档变量

  End Sub

  如果快速得到WORD中对应命令的命令名称,有多种方法,一是使宏对话框中的WORD命令,我们可以知道所有WORD命令,还可以使用宏对话框中的”ListCommands”命令,将所有WORD命令自动列表;还可以使用自定义/命令/所有命令中获得;也可以通过插入域/MacroButton域中的宏名列表中获得;最方便的是使用CTRL+ALT+数字小键盘上的”+”号,当光标变成”中国结”时,点向所需按钮命令,即出现一个自定义对话框,在这个对话框中所显示的命令,就是你要的命令名称。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Word VBA技术:几段实用小程序代码
WPS COM加载项制作连载教程
【烟花原创】VBA零基础之第92篇 Application对象(十)
VBA基础知识小结
Access,word,excel之间的数据传递
如何在VB中禁止CAD文件SaveAS
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服