Microsoft Word 对象(18) End With注释 PageNumbers集合仅仅能在HeaderFooter对象中使用。可以对PageNumbers集合应用Add方法来向一个页眉或注脚添加页码。使用Styles集合Styles集合可以在Document对象中使用。以下的示例改变了活动文档中“标题1”样式的格式。ActiveDocument. Styles (wdStyleHeading1). Font. Name = "Arial"Styles集合不能在Template对象中使用。如果想修改一个模板中的样式,可以使用OpenAsDocument方法按文档来打开模板,这样用户就可以对样式进行修改。以下的示例改变了活动文档所附的模板中“标题1”样式的格式。Set aDoc = ActiveDocument. AttachedTemplate. OpenAsDocumentWith aDoc.Styles(wdStyleHeading1). Font. Name = "Arial".Close SaveChanges :=wdSaveChangesEnd With指定CommandBars在使用CommandBars集合(表示菜单栏和工具栏)之前,可以使用CustomizationContext属性来设置保存着对菜单栏和工具栏的更改的Template或Document对象。以下的示例给“格式”工具栏添加了“双下划线”命令。因为自定义更改保存在Normal模板中,所有的文档都会受到影响。CustomizationContext = NormalTemplateCommandBars ("Formatting"). Controls. Add Type :=msoControlButton, _ID :=60, Before :=7要了解关于菜单栏和工具栏的更改范围的更多信息,请参阅第八章,“菜单栏和工具栏”。使用Dialogs集合可以使用Dialogs属性返回Dialogs集合,该集合表示内置Word对话框(例如,“打开”和“保存”对话框等)。用户不能新建内置对话框,也不能向Dialogs集合添加内置对话框。要了解关于创建用ActiveX控件创建自定义对话框的内容,请参阅第十二章,“ActiveX 控件和对话框”。返回MailMerge和MailMerge对象可以使用Document对象的MailMerge属性来返回一个MailMerge对象。无论所指定的文档是否是一个邮件合并文档,都可以使用MailMerge属性。在用户使用Execute方法执行合并之前,可以使用State属性来确定邮件合并操作的状态。如果活动文档是附加了数据源的主文档,那么以下的示例将执行邮件合并。Set myMerge = ActiveDocument.MailMergeIf myMerge. State = wdMainAndDataSource Then myMerge. Execute使用Document对象的Envelope属性可以返回一个Envelope对象。无论用户是否向所指定的文档添加了一个信封,都可以使用Envelope对象。但是,如果用户使用以下属性而没有向文档添加信封,那么会出现错误:Address属性, AddressFromLeft属性, AddressFromTop属性,FeedSource属性, ReturnAddress属性,ReturnAddressFromLeft属性, ReturnAddressFromTop属性或 UpdateDocument属性。以下的示例使用On Error GoTo语句来捕获用户没有向活动文档添加信封的错误。但是,如果用户已经向文档添加了信封,将显示收件人地址。On Error GoTo ErrorHandlerMsgBox ActiveDocument. Envelope. AddressErrorHandler:If Err = 5852 Then MsgBox "Envelope is not in the specified document"