Word宏命令集1、Word宏实现删除Word文档中的所有超链接,打开Word的菜单工具-宏-VisualBasic编辑器,或直接按快捷键Alt+F11,打开VisualBasic编辑器,“插入”-“模块”。代码:SubRemoveHyperlinks()DimoFieldAsFieldForEachoFieldInActiveDocument.FieldsIfoField.Type=wdFieldHyperlinkThenoField.UnlinkEndIfNextSetoField=NothingEndSub2、Word中的图片批量统一大小及同比例缩放有些时候,我们用Word来做一些图文混排的文档,需要正规的样式,例如图片大小一致。下面的方法就是告诉我们如何来实现很多的图片统一大小,“插入”-“模块”。代码:Subsetpicsize()'设置图片大小Dimn'图片个数OnErrorResumeNext'忽略错误Forn=1ToActiveDocument.InlineShapes.Count'InlineShapes类型图片ActiveDocument.InlineShapes(n).Height=400'设置图片高度为400pxActiveDocument.InlineShapes(n).Width=300'设置图片宽度300pxNextnForn=1ToActiveDocument.Shapes.Count'Shapes类型图片ActiveDocument.Shapes(n).Height=400'设置图片高度为400pxActiveDocument.Shapes(n).Width=300'设置图片宽度300pxNextnEndSub按比例缩放的方法:Subsetpicsize()'设置图片大小Dimn'图片个数OnErrorResumeNext'忽略错误Forn=1ToActiveDocument.InlineShapes.Count'InlineShapes类型图片ActiveDocument.InlineShapes(n).Height=400'设置图片高度为400pxActiveDocument.InlineShapes(n).Width=300'设置图片宽度300pxNextnForn=1ToActiveDocument.Shapes.Count'Shapes类型图片ActiveDocument.Shapes(n).Height=400'设置图片高度为400pxActiveDocument.Shapes(n).Width=300'设置图片宽度300pxNextnEndSub3、Word中英文标点符号互换-VBA源码实现打开“VisualBasic编辑器”或用快捷键Alt+F11,插入一个新的“模块”。SubToggleInterpunction()'中英文标点互换DimChineseInterpunction()AsVariant,EnglishInterpunction()AsVariantDimmyArray1()AsVariant,myArray2()AsVariant,strFindAsString,strRepAsStringDimmsgResultAsVbMsgBoxResult,NAsByte'定义一个中文标点的数组对象ChineseInterpunction=Array(、,。,,,;,:,?,!,……,—,~,(,),《,》)'定义一个英文标点的数组对象EnglishInterpunction=Array(,,.,,,;,:,?,!,…,-,~,(,),<,>)'提示用户交互的MSGBOX对话框msgResult=MsgBox(您想中英标点互换吗?按Y将中文标点转为英文标点,按N将英文标点转为中文标点!,vbYesNoCancel)SelectCasemsgResultCasevbCancelExitSub'如果用户选择了取消按钮,则退出程序运行CasevbYes'如果用户选择了YES,则将中文标点转换为英文标点myArray1=ChineseInterpunctionmyArray2=EnglishInterpunctionstrFind=“(*)”strRep=\1CasevbNo'如果用户选择了NO,则将英文标点转换为中文标点myArray1=EnglishInterpunctionmyArray2=ChineseInterpunctionstrFind=(*)strRep=“\1”EndSelectApplication.ScreenUpdating=False'关闭屏幕更新ForN=0ToUBound(ChineseInterpunction)'从数组的下标到上标间作一个循环WithActiveDocument.Content.Find.ClearFormatting'不限定查找格式.MatchWildcards=False'不使用通配符'查找相应的英文标点,替换为对应的中文标点.Executefindtext:=myArray1(N),replacewith:=myArray2(N),Replace:=wdReplaceAllEndWithNextWithActiveDocument.Content.Find.ClearFormatting'不限定查找格式.MatchWildcards=True'使用通配符.Executefindtext:=strFind,replacewith:=strRep,Replace:=wdReplaceAllEndWithApplication.ScreenUpdating=True'恢复屏幕更新EndSub4、实现本机Word打印密码保护:SubFilePrint()pass$=InputBox(请输入打印密码:)Ifpass$=abcdThenDialogs(wdDialogFilePrint).ShowElseMsgBox(密码错误,请与管理人员联系!)EndIfEndSubSubFilePrintdefault()pass$=InputBox(请输入打印密码:)Ifpass$=abcdThenDialogs(wdDialogFilePrint).ShowElseMsgBox(密码错误,请与管理人员联系!)EndIfEndSub5、Word宏实现记录本机打印历史记录SubFilePrint()Dialogs(wdDialogFilePrint).ShowDName=ActiveDocument.Path+\+ActiveDocument.NameIfActiveDocument.Path=ThenDName=未保存文档Tim=Str(Date)+日+Str(Time)Openc:\print.txtForAppendAs#1Print#1,于+Tim+打印+DNameClose#1EndSub6、在显示屏上看到Word文档的真实打印效果:套打单据表格及进行某些特殊的版式排版时,很希望屏幕上显示的大小与打印结果完全相同,以便进行精确的套打操作。但能够“所见即所得”的Word显示的结果与打印出来的结果虽然格式上能够做到看到什么得到什么,但由于各人所用的显示器的尺寸不同,而且相同尺寸的显示器其可视面积也有所不同,因此显示与打印结果的大小比例很难做到完全一致。如果能够给Word添加一个1:1全真显示的工具按钮就好了!这样即使我们不需要进行精确的套打,也可以在文稿完成后按一下这个按钮,看看最终输出的字体大小设置得是否合适。实现这个目的只需三步:一、取得与真实打印完全一致的屏幕显示比例由于各人使用的显示器尺寸不同及画幅调整的习惯不同,因此在此无法给出一个固定的数据。请先将显示器的画幅调整妥当,以能够最大限度地显示出完整的全屏幕窗口为准。找一张A4纸,用尺子量下该纸的宽度,要求精确到毫米(我测的是29.4*21.8),因为标称为某种开本的纸张,其实际大小并不一定与标称值相同。然后,打开Word新建一空白文档,并设置为“页面”视图,将打印设置中的“纸型”设置为与准备的纸张相同的纸型,如在此为A4,再将“纸型”选项卡中的纸张宽度设置为与刚才量好的值完全一致,确定后返回编辑界面。现在我们就以这张纸为依据,确定屏幕显示比例。在工具栏的“显示比例”输入框中反复手工调整显示比例的大小,注意系统本身只提供若干种固定的显示比例,其实我们完全可以直接输入任意一个整数,比如笔者的19英寸宽屏显示器在设置为65%后,屏幕上的页面大小与真实纸张完全一致,这个“65”就是我们下一步需要的数据。二、编写一个宏命令1)请在Word的编辑界面按Alt+F8,打开“宏”对话框,在“宏名”编辑框中输入“yitoyi”,然后单击[创建]按钮.2)打开VisualBasic编辑器,在代码编辑窗口输入下列代码:PublicSub全真1:1显示()ActiveWindow.ActivePane.ViewZoom.Percentage=65EndSub注意:代码中等于号后面的数字应灵活更改为与你的显示器对应的真实比例数字。三、创建1:1全真显示的工具栏按钮按Alt+V+T+C,调出工具栏“自定义”对话框,选择“命令/宏”,右边的列表框中会显示出所有已经存在的宏。找到刚才编辑的那个“yitoyi”的宏,将它拖入Word主界面的工具栏中的任意位置,这时工具栏中会出现一个与宏名对应的按钮,请右击新按钮,在弹出的快捷菜单的“命名”编辑框中更改按钮名称为“1:1”。按[关闭]按钮退出设置。7、Word宏实现快速打印当前页一般来说,如果只想打印Word文档中的当前页面时,我们必须进入打印属性设置窗口,然后将该窗口“页面范围”处的“当前页”项目选中,再单击一下“确定”按钮才可以。很显然,如果每次打印当前页面都按上面的方法来操作的话,不但麻烦不说,而且也不利于提高文档打印效率。那我们有没有办法跳过打印属性设置窗口,来直接“命令”打印机去打印当前页面呢?其实要做到这一点并不是一件十分困难的事情,我们完全可以借助Word应用程序的“录制新宏”功能,来创建一个可以直接让打印机去打印目标文档中当前页面的快捷命令,下面就是具体的实现步骤:1)打开“工具”-“宏”-“录制新宏”命令。设置好后,单击“指定”,“关闭”。!--[endif]--2)在宏名中输入:printpage,“将宏指定到”,我们选择“健盘”!--[if!supportLineBreakNewLine]--快捷键用“Ctrl+Alt+/”3)开始“录制”。这个时候光标上会显示一个磁带的形状,在左侧还用一个控制录制的小工具。录制好后,再想打当前文档时,直接用快捷键Ctrl+Alt+/,就可以了。