はじめに

DMを郵送するときなど、顧客名簿アプリの一覧画面から宛名ラベルを出力出来ると便利ですね。ただ、宛名ラベルの用紙( 宛名シート )は色々な種類が販売されているので、Excelで印刷しようとするとラベルの印刷位置合わせが大変です。

宛名シートがシール( 宛名シール )になっている場合、1枚の印刷範囲は決まっているので枠内に印刷する必要があるので、より一層位置合わせの難易度が上がります。

 

ですので、各社から提供されている宛名ラベルのテンプレートを使ってwordなどの差し込み印刷で印刷するようにして、宛名データには「Excelを出力する」で出力したExcelファイルを利用することをオススメします。

 

 

なお、テンプレートで位置合わせして直接PDFで出力することも可能なので、後半ではその場合のテンプレートの作成方法もご紹介します。

 

使用アプリ

送付状アプリ

他のTIPSで作成したアプリを使ってみます。

 

今回の出力に使うのは、こちらのフィールドのみです。

フィールド名

フィールドコード

テーブル

フィールドタイプ

氏名

氏名_依頼者

 

文字列1行

郵便番号

郵便番号_依頼者

 

文字列1行

住所

住所_依頼者

 

文字列1行

電話番号

電話番号_依頼者

 

文字列1行

 

 

テンプレート

こちらのリファレンスマニュアルの「レコードの一覧に対して利用できるgusukuコマンドの仕様」に記載の通り、複数レコードを展開することが可能です。

 

 

Customine設定

一覧画面を表示した時」に「ボタンをメニュー位置に配置する」と「一覧にチェックボックス列を追加する」でボタンとチェックボックスを追加します。

ボタンを押した時」に「一覧で選択されたレコードを取得する」でチェックしたレコードを取得できます。

その後は「他のアクションの実行が完了した時」でアクションを繋ぎ、「キーを指定してレコードを取得する」でテンプレートを取得します。最後に「Excelを出力する」で出力します。

 

出力ファイルの「送付先一覧」のシートはこのようになりますので、これを使って色々なソフトで宛名ラベルの印刷が可能です。

 

PDFで出力する場合

出力結果で宛名一覧が出力できるなら、そのセル値を参照して宛名ラベルを印刷できるのではと考える人もいると思います。

ただ、一覧を展開する時にセルの削除追加が実施されるために、普通に参照すると参照先のセルがないというエラーになります。そこで、INDIRECTのようにセルを直接指定する方法を使います。


テンプレート


A1からB2には次の式が入力されています。

=INDIRECT("送付先一覧!A2")

=INDIRECT("送付先一覧!A3")

=INDIRECT("送付先一覧!B2")

=INDIRECT("送付先一覧!B3")


A4からB5には次の式が入力されています。

=INDIRECT("送付先一覧!C2")

=INDIRECT("送付先一覧!C3")

=INDIRECT("送付先一覧!D2")

=INDIRECT("送付先一覧!D3")


こうすることで、展開後のセル位置を直接参照することが可能になります。


Customine設定

先ほどと設定はほぼ同じですが、PDF出力にすることでExcelのない環境でも印刷可能です。


補足

出力されたPDFには全シート分が出力されていますので、印刷ページ範囲を指定するようにしてください。

また、PDFで出力する場合はExcelの画面表示とは印刷結果の細かな位置が違いますので、テンプレート作成時には「PDFとして保存」を使って結果を確認しながら作成するようにしてください。


まとめ

テンプレートの設定というよりはExcel側の設定が大変ではありますが、Excelでの位置合わせに慣れている方だとやりやすいかもしれません。

式を工夫すると他の印刷方法も可能と思いますので、色々と設定をお試しください。