教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows

 

Word  ≫ フィールド

Word  ≫ 差し込み印刷

Word:Next Record If (NextIfフィールド)の使い方

 

 

 

 

 

 

 

 

ここでは差し込み印刷におけるNextRecordIf(NextIfフィールド)の使い方についてご紹介します。

 

■ どんな使い方をするの?

条件に合致すれば次のレコードを差し込むことができます。結果がTrueの場合は次のレコードが差し込まれ て終了、Falseなら現在のレコードのままで終了です。(次々にレコードを検証するわけではない)

 

正確には 次のような動作をします。

 

 

これを使うと特定の種類のデータのみ差し込むことができます。例えば「会社ごと」「部署ごと」に差し込むことができます。

 

注:ラベルでは使用できません。


それでは上図のように【会社ごとに氏名を挿入】してみましょう。(種類はレター)

 

■ 準備:データファイルで会社ごとに区切り(空白行)を入れる

まずはデータファイルで会社ごとに空白行を入れて区切ります。NextIfで「会社名が空白でないなら次レコードも挿入」とするためです。

 

 

※ データ量が多く、手動で空白行を入れるのが困難な場合は「Excel:項目ごとに空白行を入れるには」を参考に操作してください。

 

■ NextRecordIfを使って差し込む

1件目は普通に差し込みます。2件目以降は「会社名が空白でなければ次レコード」という条件で差し込みます。尚、条件として差し込むMergeFieldは現在のレコードの値を参照します。(挿入しようとしているレコードの値ではないため、挿入しようとしている行(同じ行)に条件のフィールドは作成できません)

 

↓つまり1件目の会社名が空白でないなら2件目(佐々木次郎)が挿入。2件目の会社名が空白でないなら3件目(空白)が挿入。3件目の会社名が空白なのでここで終わり(次ページ)

 

★現在のレコードの会社名が空じゃないなら次へ →  氏名フィールド挿入

{NextIf { MergeField 会社名 } <> “” }  { MergeField 氏名 }

------------------------------------------------------------------------------

 

≪会社名≫
 

≪氏名≫   ← 1レコード目(山田太郎)
≪NextRecordIf≫ ≪氏名≫   ← 現在のレコード(1)の会社名が空白でない (True)ので次へ → レコード2の氏名(佐々木 次郎)が挿入

≪NextRecordIf≫ ≪氏名≫   ← 現在のレコード(2)の会社名が空白でない (True)ので次へ → レコード3の氏名(空白)が挿入

≪NextRecordIf≫ ≪氏名≫   ← 現在のレコード(3)の会社名が空白なので(False)次へいかない → 現在のレコード3の氏名(空白)が挿入

≪NextRecordIf≫ ≪氏名≫   ← 現在のレコード(3)の会社名が空白なので(False)次へいかない → 現在のレコード3の氏名(空白)が挿入

… フィールド挿入分続く。レコード4(佐藤美和)は次ページに差し込まれ、同様にNextIfで挿入されていきます。

 

★ 細かい操作手順は「会社ごとにデータを差し込む(1ページに 付き同じ種類のデータを挿入)」を参照してください。
 

★ 補足

上記の仕様(条件は現在のレコードの値を参照)から、挿入したいレコードと同じ行に条件フィールドは作れません。例えば下のデータで「マークが○でないなら次のレコードを挿入」とするとします。

{NextIf { MergeField マーク } <> “○” }  { MergeField 氏名 }

 

 

≪氏名≫    ← レコード1(山田太郎)

≪NextRecordIf≫ ≪氏名≫    ← 現在のレコード(1)のマークが○なので(False)次レコードへはいかない → 現在のレコードの氏名(山田太郎)が挿入

≪NextRecordIf≫ ≪氏名≫    ← 現在のレコード(1)のマークが○なので(False)次レコードへはいかない → 現在のレコードの氏名(山田太郎)が挿入

≪NextRecordIf≫ ≪氏名≫    ← 現在のレコード(1)のマークが○でない(False)次レコードへはいかない → 現在のレコードの氏名(山田太郎)が挿入
 

………を繰り返し、差し込み結果は下図のようになります。

 

P1…1レコード目挿入後、現在のレコード(1)のマークが○ではないのでFalseとなり、≪氏名≫フィールド分、レコード1の値(山田太郎)が挿入されます。

P2…次レコード2が次ページに差し込まれ、レコード2のマークは○ではない(True)ので、次レコード3の氏名が挿入。レコード3のマークは○なので(False)次へはいかず≪氏名≫分、レコード3の値が挿入されます。

P3…次レコード4が次ページに差し込まれ、レコード4のマークは○ではない(True)ので、次レコード5の氏名が挿入。レコード5のマークは○なので(False)次へはいかず≪氏名≫分、レコード5の値が挿入されます。

P4…次レコード6が次ページに差し込まれ、その次はないのでここで終了です。

 

 

 

 

 

教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows