メディア掲載: レバテックフリーランス様のサイトで当ブログが紹介されました

【Word/Excel】差し込み印刷で複数行を扱う方法

Wordの差し込み印刷機能を使えば、同じWordファイルでも一部分だけ(名前とか住所とか)内容を変えて一括印刷ができて便利ですよね。

今回の記事では、それを更に発展させて、複数のデータを1枚に差し込む方法を解説したいと思います。意味がわかりにくいと思いますので、まず作成結果をお見せします。

ご担当科目詳細の部分に注目。宛先ごとにデータ数(行数)が異なる。

宛先の先生ごとに、担当科目の数が違うのですが、うまく差し込みできていることがわかりますでしょうか。

さっそく手順を解説していきます。

差し込み元データ(Excel)を整形する

まずは、差込元のデータを用意します。今回用意したデータはこんな感じになっています。

データとしては出来上がっているのですが、このままでは今回目標としている形に差し込み印刷をすることができません。今回の目標を達成するためには、教員と教員の境に空行を入れる必要があります。(理由の説明は難しいので割愛します。そういうものだと思ってください)

まずは、この表のデータを小計します。

データ → 小計

「グループの基準」は、書類の宛先を識別する項目を選びます。今回の例では、先生ごとの書類を作成するので、グループの基準は教員IDにします。

「集計の方法」「集計するフィールド」はどれでも大丈夫です。

最後に「集計行をデータ下に挿入する」にチェックをつけてOKを押下します。

こんな感じになります

目標としていたのは、教員と教員の境に空行を入れるなので、あとは、「A001 個数」とか「5」を消せばOKです。

オートフィルターを使って、対象の行を抽出しdeleteキーで値を削除します。

集計の行を抽出して・・・
deleteキーを押す
不要な文字が消えました
フィルターを解除すると目標の形になっています

ここまでの手順で差し込み元となるExcelデータが完成しました。

Wordで書類のフォーマットを作成する

次に、Wordで書類を作っていきます。

一番上に宛名があって、下にその先生の担当科目一覧表がある、という作りにしました。

まずは普通に差し込みしてみる

書類のフォーマットができたので、早速差し込みをしてみましょう。

差し込み文書 → 宛先の選択 → 既存のリストを使用
先ほど作成したExcelを選択
対象の表を選択する

リストの選択ができたので、次は、差し込みを進めていきましょう。

各箇所にデータを差し込んでいく
上部の教員名と、下部の表に差し込みしました

さて、差し込みの設定が終わったので、一旦プレビューしてみましょう。結果のプレビューを押します。

当然ではありますが、目指す形にはなっていませんね。データの1行目の内容が繰り返し差し込みされてしまっています。

月曜1限が5行でてしまっている・・・

Next Record If を使って次のデータを差し込む

ここからは、「ご担当科目詳細」の各行に、それぞれ別のデータが差し込まれるように修正していきます。

その方法として、Next Record If を使用します。

ルール → Next Record If (条件により次のレコード)
教員IDが空白(””)でない場合、次の行に進む設定
1行目の最後に Next Record Ifが挿入できた

2行目以降にも同じNext Record Ifを入れていきます。コピー&ペーストも可能です。

全行にNext Record Ifを設定した

これで作成が完了しました。結果をプレビューしてみると、期待したとおり、新宿ユウジ先生の担当する各科目が一覧に表示されました。

期待通りの結果となった

さて、最後に「完了と差し込み」で差し込み印刷を行います。

完了と差し込み → すべて → OK

印刷した結果、先生ごとに科目一覧を差し込んだ状態で印刷できました。

先生ごとに帳票が印刷できた

ただ、ひとつ残念な点として、この方法だと、一番最後に1枚ゴミが印刷されてしまいます。ご注意ください。

残念ながら最後に1枚ゴミがはいってしまう

以上です。皆さんも、目的にあったものが作成できましたでしょうか?

参考:Next Record If とは + 今回のサンプルの仕組み

Next Record If は、指定した条件を満たした場合は次のデータを読み込むという機能です。今回の設定だと、教員IDが空白でなければ、次のデータを読み込むになります。

わかりにくいと思うので、gif動画を掲載します。

1.Excelの1レコード行目を読み込む

A001新宿ユウジ1限Reading Ⅰ

2.1行目に曜日、時限、科目名を差し込む

3.Next Record If の判定(教員IDがA001で、空白ではないのでExcelの2レコード目を読み込む)

A001新宿ユウジ2限Reading Ⅱ

4.2行目に曜日、時限、科目名を差し込む

5.Next Record If の判定(教員IDがA001で、空白ではないので Excelの3レコード目を読み込む)

・・・というような流れです。

教員IDが空白の行にたどり着くと、次のレコードに進みません。

そのページのすべての差し込み処理が終わったら、次のレコードが読み込まれ、次の先生の資料が作成されるわけです。

参考サイトなど

いかがでしたか?本来であれば、このような仕事は帳票システムやAccessの「レポート」を使うほうが適切なのですが、費用の問題や、使用法修得の労力もありますよね。そのような読者のかたの参考になれば幸いです。

Word(ワード)で差し込み印刷のやり方! Excelの差し込みデータで文書作成 [ワード(Word)の使い方] All About
差し込み印刷とは? 案内文など作成の際、文面が同じで、会社名や氏名など一部だけが異なる文書を作るときは、Word(ワード)の「差し込み文書」が便利です。本記事では、Excelで会社名や氏名などの差し込みデータを作り、Word文書に関連付けるやり方、差し込み印刷の方法を説明します。大量の案内文、はがきの宛名、名札やラベル...
Word:Next Record If (NextIfフィールド)の使い方 −教えて!HELPDESK
条件により次のレコードを差し込むことができます。結果がTrueの場合は次のレコードが現在の文書に連続して差し込まれ、Falseの場合はフィールド結果は空白になり、次のレコードは新しいページに差し込まれます。これは特定の種類のデータのみ差し込むのに便利で、例えば「会社ごと」「部署ごと」に差し込むといった操作が可能になりま...

コメント

  1. まつながのりこ より:

    わかりやすい解説をいつも参考にさせて頂いております。
    上記の差し込み印刷の方法を行うと、科目部分は、HPの画像のように差し込むことができました。ただ、宛名の先生名は、同じ名前が複数ページに差し込まれ、教員ごとの宛名に変更できません。

    何か対策があればお教えいただけないでしょうか?どうぞ、宜しくお願い致します。

タイトルとURLをコピーしました