差し込み印刷の各レコードに対して差し込みを実行するときに発生します。
構文
式。MailMergeBeforeRecordMerge (doc, cancel)
expressionApplication オブジェクトを 表す変数。
パラメーター
| 名前 | 必須 / オプション | データ型 | 説明 |
|---|---|---|---|
| Doc | 必須 | Document | 差し込み印刷のメイン文書を指定します。 |
| Cancel | 必須 | ブール型 (Boolean) | True を設定すると、現在のレコードの差し込みを開始する前に処理を停止します。 |
注釈
Application オブジェクト イベントにアクセスするには、コード モジュールの General Declarations セクションで Application オブジェクト変数を宣言し、その変数をイベントにアクセスする Application オブジェクトと同じに設定します。
Microsoft Publisher Application オブジェクト でイベントを使用する方法については、「 Application オブジェクトでイベントを使用する」を参照してください。
例
この例では、郵便番号 (この例ではフィールド番号 6) の長さが 5 未満であることを確認し、5 未満の場合は、そのレコードの差し込みのみをキャンセルします。
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 has fewer than five digits
If intZipLength < 5 Then
Cancel = True
End If
End Sub
このイベントを発生させるには、モジュールのグローバル宣言セクションに次のコードを配置し、次の初期化ルーチンを実行します。
Private WithEvents MailMergeApp As Application
Sub InitializeMailMergeApp()
Set MailMergeApp = Publisher.Application
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。