Application.MailMergeBeforeRecordMerge Event (Word)
Occurs as a merge is executed for the individual records in a merge.
Private Sub object_MailMergeBeforeRecordMerge(
_ByVal Doc As Document_ ,
_Cancel As Boolean_ )
expression A variable that represents an 'Application' object that has been declared with events in a class module. For information about using events with the Application object, seeUsing Events with the Application Object.
|Doc||Required||Document||The mail merge main document.|
|Cancel||Required||Boolean||True stops the mail merge process, for the current record only, before it starts.|
This example verifies that the length of the postal code, which in this example is field number six, is fewer than five digits and, if it is, cancels the merge only for that record. This example assumes that you have declared an application variable called MailMergeApp in your general declarations and have set the variable equal to the Microsoft 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 fewer than five digits If intZipLength < 5 Then Cancel = True End If End Sub