Application.MailMergeBeforeMerge 事件 (Publisher)

在合并已开始执行,而邮件合并中的记录尚未合并之前发生。

语法

表达式MailMergeBeforeMerge (DocStartRecordEndRecordCancel)

expression:表示 Application 对象的变量。

参数

名称 必需/可选 数据类型 说明
Doc 必需 Document 邮件合并主文档。
StartRecord 必需 Long 要包含在邮件合并中的数据源的第一个记录。
EndRecord 必需 Long 要包含在邮件合并中的数据源的最后一个记录。
Cancel 必需 Boolean 在邮件合并过程开始前停止该过程。

备注

若要访问 Application 对象事件,请在代码模块的“常规声明”部分中声明 Application 对象变量 ,然后将该变量设置为要访问其事件的 Application 对象。

有关对 Microsoft Publisher Application 对象使用事件的信息,请参阅 对 Application 对象使用事件

示例

以下示例在邮件合并过程开始前显示一条消息,询问用户是否继续。 如果用户选择“否”,则会取消合并过程。

Private Sub MailMergeApp_MailMergeBeforeMerge(ByVal Doc As Document, _ 
 ByVal StartRecord As Long, ByVal EndRecord As Long, _ 
 Cancel As Boolean) 
 
 Dim intVBAnswer As Integer 
 
 Set Doc = ActiveDocument 
 
 'Request whether the user wants to continue with the merge 
 intVBAnswer = MsgBox("Mail Merge for " & Doc.Name & _ 
 " is now starting. Do you want to continue?", _ 
 vbYesNo, "Event!") 
 
 'If user's response to question is No, then cancel merge process 
 'and deliver a message to the user stating the merge is canceled 
 If intVBAnswer = vbNo Then 
 Cancel = True 
 MsgBox "You have canceled mail merge for " & _ 
 Doc.Name & "." 
 End If 
 
End Sub

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。