MailMergeBeforeRecordMerge Event

Microsoft Word Visual Basic

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 postal 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