MailMergeBeforeRecordMerge Event

Microsoft Word Visual Basic

Show All

MailMergeBeforeRecordMerge Event

       

Occurs as a merge is executed for the individual records in a merge.

Private Sub object_MailMergeBeforeRecordMerge(ByVal Doc As Document, Cancel As Boolean)

object  An object of type Application declared with events in a class module. For information about using events with the Application object, see Using Events with the Application Object.

Doc    The mail merge main document.

Cancel   True stops the mail merge process for the current record only before it starts.

Example

This example verifies that the length of the zip code, which in this example is field number six, is less than five, and if it is cancels the merge for that record only. This example assumes that you have declared an application variable called MailMergeApp in your general declarations and have set the variable equal to the Word Application object.

Private Sub MailMergeApp_MailMergeBeforeRecordMerge(ByVal _
    Doc As Document, Cancel As Boolean)

        Dim intZipLength As Integer

        intZipLength = Len(ActiveDocument.MailMerge _
            .DataSource.DataFields(6).Value)

        'Cancel merge of this record only if
        'the zip code is less than five digits
        If intZipLength < 5 Then
            Cancel = True
        End If

End Sub