[ Home ] - [ Back ] - [ Top ]

郵便番号枠に差し込みデータを印刷する

年賀状宛名印刷の上級編です。
郵便番号の処理と縦書き印刷処理が追加されています。
初級編の「年賀状宛名印刷」の知識があることを前提にしています。

作業の概略


これができあがり図です。Writerの差し込み印刷機能を使って、年賀状の宛名印刷をします。

基本的な作業の流れは初級編と同じです。追加されているのは、宛名を縦書きにしたこと、そして縦書きにふさわしいフォントを使用したこと、郵便番号を枠に印字したこと、差出人の住所氏名などのデータを印刷したことです。

全体を縦書きにしたので、郵便番号は、Writerの「枠」機能を使っています。はがきの上部にある宛先の郵便番号記入位置にあわせて、数字ひとつずつの枠を個別に作成しています。ですから、ぴったりの位置に配置することができます。
ちなみに、はがきの下部にある差出人の郵便番号は、1つの枠に全体の数字を入力しています(調整用のスペースを間に配置)。こちらの方は枠が小さいので(細かなずれにこだわらなければ)、この方法でも十分実用になります。

さて、このような宛名印刷をするには、事前の準備作業が必要です。差し込むデータファイルのほうに、データ段階での処理を加えておく必要があります。


これが差し込み印刷に使う住所録データです。初級編の「年賀状宛名印刷」(以下「初級編」と表記)で使用したのと同じく、Calcで作成した住所録を使いましょう。

基本的なデータ内容は同じですが、郵便番号の項目が追加されています。


こちらが事前処理を加えた結果です。

まず、「住所2」項目に含まれている番地の部分を漢数字に置き換えます。
それから、7桁の郵便番号を分解して、1文字ずつのデータを作成します。そのため、既存の住所録データの右側に「住所(縦)」「n1」「n2」……の8項目を追加しました。

ここから先の解説は、Calcにおけるこれらのデータ処理が中心です。実際にWriterで差し込み印刷をする部分については初級編と同じですから、省略しています。あらかじめ初級編に目を通して(できれば実際に試して)、差し込み印刷の手順を理解した上で取りかかることをおすすめします。

(補足)算用数字を漢数字に置き換える方法
算用数字を漢数字に置き換える方法は、いろいろあります。
すぐに思いつくのは、「編集」―「検索と置換」コマンドを使う方法です。「1」→「一」、「2」→「二」、「3」→「三」……と作業を繰り返せば、漢数字の住所データができあがります。そして、その作業をマクロとして作成しておけば、ボタンをクリックすると漢数字におきかわる表シートを作成することも可能です。
面倒な作業を避けるなら、最初から漢数字で住所データを入力しておくのがよいかも知れません。年賀状専用の住所録なら、それも可能でしょう。
ここでは、SUBSTITUTE関数を利用して、漢数字のデータを表示する数式を作成します。数式は元のデータとは別セルに設定されますので、元のデータはそのまま残しておくことができます。元のデータを変更すれば、自動的に漢数字のデータも更新されるので便利です。
作成する数式は、SUBSTITUTE関数がネスト(入れ子)になっていますので、少し手間がかかります。しかし、一つ作成してしまえば、あとは数式をコピーするだけです。数式の作成では、同じ処理が繰り返しになっていますので、落ち着いて間違えないように作業しましょう。

番地データを漢数字に置き換える


では縦書き用の漢数字の住所データを作成していきましょう。
「I2」セルを選択して作業を開始します。
「関数オートパイロット」ボタンをクリックします。


「関数オートパイロット」ダイアログボックスが表示されます。
「分類項目」のドロップダウンリストから「文字列」を選びます。
「関数」リストの内容が文字列関数に切り替わりますから「SUBSTITUTE」関数を選びます。
(このとき関数ボックスをクリックしてから「S」キーを押すと、Sで始まる関数にジャンプできます)。

「次へ>>」ボタンをクリックします。


ダイアログボックスの右側部分が切り替わり、関数の引数を入力するためのテキストボックスが表示されます。

2番目の「検索文字列」ボックスに「”1”」と記入します。
3番目の「置換文字列」ボックスに「”一”」と記入します。
続いて一番上の「文字列」ボックスの左側にある「fx」ボタンをクリックします。


関数選択の状態(一つ前の画面ショットの状態)に戻りますから、もう一度SUBSTITUTE関数を選択します。
これでSUBSTITUTE関数が入れ子になった状態ができあがります。

こんどは「検索文字列」ボックスに「”2”」と記入します。
「置換文字列」ボックスには「”二”」と記入します。
続いて、もういちど「文字列」ボックスの左側にある「fx」ボタンをクリックします。


上記の操作を繰り返して「3」→「三」、「4」→「四」……とSUBSTITUTE関数による置換処理を追加していきます。最終的に「0」→「〇」まで作成したら完了です。

最後は、「fx」ボタンをクリックする代わりに「C2」セルの参照を記入します。


関数オートパイロットの「構成」パネルに切り替えると、作成している数式の内容をツリー表示で確かめることができます(上の画面の左側部分)。そして、ツリー表示の部分をクリックすると、そのレベルの部分の関数を編集できます。今回のように、何重にもネストした数式を作成するときには、大変便利です。

内容が確認できたら、「OK」ボタンをクリックしてダイアログボックスを閉じましょう。

(参考) 関数オートパイロットになれている人のためのもう一つの方法

関数オートパイロットの操作になれている場合は、もう少し簡単に処理することができます。参考のために概略を解説します。


関数オートパイロットを使って1つ目のSUBSTITUTE関数を入力するときに、参照セル(C2セル)の部分も記入して、とりあえず一つの数式を完成させます。

次に、下側の「数式」ボックスで、この数式をコピーします(このとき、「編集」メニューのコマンドは使えないので、Ctrl+「C」キーを利用する)。


コピーした数式を「文字列」ボックスに貼り付けます(このときも「編集」メニューのコマンドは使えないので、Ctrl+「V」キーを利用する)。

この画面ショットのような状態を作り出します。

検索文字列と置換文字列を交換しながら、この作業を繰り返していくと、(一回ごとに関数を選択する手間がないので)手早く作業が終わります。

数式の結果を確認して、下方向へ連続コピーする


数式の入力が完了すると、住所の番地が漢数字に置き換わったデータが表示されます。

正しく処理が行われていることを確認したら、セルの右下に表示されているハンドルをドラッグして、作成した数式を下方向に連続コピーしてください(メニュー操作は「編集」−「連続データ」―「下へ」コマンド)。

郵便番号を1文字ずつに分解する


続いて、郵便番号の分解作業です。「MID」関数を使って、「n1」〜「n7」に表示します。

参照セルを記入するときに「$A2」のように列方向だけを絶対参照にしておくと、数式を右方向にコピーした後の処理が楽になります。


数式を右方向にコピーしたら、取り出す文字の位置を順番に指定します。

(注意)
「150-0013」の4文字目の「-」は必要ありませんから、「n4」データは5番目の文字をとりだします。



1行目の数式が完成したら、下方向に連続コピーします。このとき、7つの数式をまとめて連続コピーすることができます。

それぞれのセルに適切なデータが抽出されていることを確認してください。



以上で事前準備が終了です。

新しく追加した範囲を含めて「データベース範囲」として名前を付けておきましょう。「データ」−「範囲の指定」コマンドを使います。この作業は、初級編を参照してください。

これでCalcでの作業が完了しました。ファイルを保存しておきましょう。

差し込みフィールドの設定

それではWriterでの作業に移りましょう。
Writerでの作業の基本的な流れは、初級編と同じです。
初級編と同じ部分は省略して、追加処理が必要な部分を中心に解説していきます。適宜、初級編を参照してください。


「ツール」―「データソース」コマンドで、新しく作成した縦書き印刷用のデータを「データソース」として登録しておきます。
具体的な手順は初級編を参照してください。


はがきサイズのページ書式を設定します。

「挿入」―「フィールド」―「その他」コマンドで、差し込みフィールドを配置します。
ここで、とりあえず横書きのままで、データの差し込みが正しく行われるか試しておくと良いでしょう(私の環境では、縦書きの書式を設定しにてからフィールドを挿入すると、データの差し込みがうまく機能しないことがありました)。

ページの背景に挿入する年賀状の図は、正確な位置に表示されるように設定しておく必要があります。サイズや表示位置などを調整してください。背景の図の挿入手順については、初級編を参照してください。

縦書き印刷の設定


「書式」−「ページ」コマンドで「ページスタイル」ダイアログボックスを表示します。
「文字方向」を「右から左へ(縦書き)」に切り替えます。



ページ全体が縦書きに切り替わり、差し込みフィールドも縦書き表示となります。



差し込みフィールドを、適当な位置に配置しましょう。

それぞれの行ごとに、インデントを設定し、配置を指定していきます。インデントの指定は、左側のルーラでインデント位置を示すアイコンをドラッグして行うことができます。
2行目の「住所(縦)」フィールドは「下揃え」、そして「役職」「氏名」「敬称」の行は「中央揃え」となっています。

フィールドを選択して、フォントやサイズを設定します。ここでは「正楷書体」を使用していますが、毛筆フォントやペン字フォントなど、好みのものを設定してください。氏名は少し大きめの文字サイズにしておきましょう。


郵便番号の設定


郵便番号枠を配置していきます。「挿入」―「枠」コマンドで表示される「枠」ダイアログボックスで、位置とサイズを設定します。

サイズは0.6㎝×0.8㎝、「高さ自動調整」をオフにしてください。アンカーは「ページに」設定します。

位置は、実際の画面上で微調整します。私の環境では、横位置が左から1.2㎝(縦書きなので、ハガキの上辺からの位置になる)、縦位置が上から5.1㎝(同様に右辺からの位置となる)でちょうど良い具合になりました。



「折り返し」パネルで「折り返しなし」を設定します。



「外枠」パネルで「線なし」を指定します。


枠をひとつ作成したら、それをコピーして貼り付けていきます。、7つの枠を少しずつずらして配置します。
私の環境では、枠同士の間隔は7㎜、枝番との切れ目の部分は8㎜にしたときに、バランスよく配置できました。

それぞれの枠に、郵便番号データを差し込みます。
文字サイズやフォントも設定しておきましょう。この例では、ゴシック、16ポイント、ボールドを設定しました。


差出人のデータを記入して年賀状を完成する


差出人のデータを記入して、年賀状を完成させましょう。

差出人の郵便番号枠は小さいので1つの枠ですませることにします。ここに入力するのは、差し込みフィールドでなく、固定文字なので、サイズの調整も容易です。



差し出し人の住所氏名を記入します。

これで、作業が完了しました。

実際の差し込み印刷の作業手順については、初級編を参照してください。


このTipsで作成したファイルをサンプルとしてダウンロードできます。

ダウンロード]   

Calcの住所録(縦書き、郵便番号処理ずみ)
  Writerの差込印刷ファイル(縦書き、郵便番号処理ずみ)
背景の年賀状イメージ(初級編と同じものです)

(※)本例で使用した住所データはすべて架空のものです。
(※)郵便はがき(年賀はがき)の画像をそのまま印刷物として作成すると、郵便切手類模造等取締法に抵触する可能性があります。画像データは差し込みフィールドのレイアウト以外の目的に使用しないでください。

制作者名:松井幹彦

[ Home ] - [ Back ] - [ Top ]

SourceForge.jp
(C) 2002 OpenOffice.org Users Group Japan. All Rights Reserved
当サイトの閲覧や、記載事項の実行によって何らかの損害を被っても、OpenOffice.org 日本ユーザー会は免責されるものとします。