为了提高录制的宏的功能,就可能需要修改录制到模块中的代 码。
11.5.1 删除 Selection 属性
使用宏录制器创建的宏通过对所选内容进行操作。在大多数录制 的宏指令的开头都有Selection。录制的宏使用 Selection 属性返 回 Selection 对象。例如,下面的示例将所选内容移动到 Book 书 签,并在书签后插入文字。
Sub MyMacro()
With ActiveDocument.Range(Start:=0, End:=0)
.InsertAfter "Title"
.ParagraphFormat.Alignment =
wdAlignParagraphCenter
End With
End Sub
11.5.3 删除不必要的属性
如果录制了一个关于选中对话框中的选项的宏,即使只更改一个或两个选项,宏录制器也会记录该对话框中的所有选项的设置。如果不想更改所有选项,可从记录的宏中删除不必要的属性。下面录制的宏包含【格式】菜单中【段落】对话框的一些选项。
Sub Macro()
With Selection.ParagraphFormat
.LeftIndent = InchesToPoints(0)
.RightIndent = InchesToPoints(0)
.SpaceBefore = 6
.SpaceAfter = 6
.LineSpacingRule = 0
.Alignment = wdAlignParagraphLeft
.WidowControl = True
.KeepWithNext = False
.KeepTogether = False
.PageBreakBefore = False
.NoLineNumber = False
.Hyphenation = True
.FirstLineIndent = InchesToPoints(0)
.OutlineLevel = 10
End With
End Sub
但是如果只想更改段前和段后间距,可将宏改为:
Sub MyMacro()
With Selection.ParagraphFormat
.SpaceBefore = 6
.SpaceAfter = 6
End With
End Sub
因为只需设置少数属性,所以简化后的宏运行得更快。只更改选定段落的段前和段后的间距,而所有其他设置都没有改变。
11.5.4 删除不必要的参数
当宏录制器记录一个方法时,会包含所有参数值。下面的宏录制打开名为 Test.doc 的文档。所得到的宏包含了 Open 方法的所有参数。
Sub Macro()
Documents.Open FileName:="C:\My Documents\Test.doc",
ConfirmConversions:= _
False, ReadOnly:=False, AddToRecentFiles:=False,
PasswordDocument:="", _
PasswordTemplate:="", Revert:=False,
WritePasswordDocument:="", _
WritePasswordTemplate:="",
Format:=wdOpenFormatAuto
End Sub
可以删除宏中不需要的参数。例如,可以删除所有设置为空字符串的参数,如 WritePasswordDocument:="",如下所示。
Sub MyMacro()
Documents.Open FileName:="C:\My Documents\Test.doc",
ConfirmConversions:= _
False, ReadOnly:=False, AddToRecentFiles:=False, _
Revert:=False, Format:=wdOpenFormatAuto
End Sub
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |