Excelで関数だけを使って宛名印刷をする

Excelで関数だけを使って宛名印刷ができる(コピペじゃないよ)

みなさん、こんにちは。あべっきぃです。

Excelを使った住所録の管理はよくあるパターンだと思います。

VLOOKUP関数だけで宛名印刷ができる
住所録自体の印刷は、多くの方が問題なくできると思います。
しかし、「その住所録リストを使って宛名印刷したい」となると一気に敷居が上がってしまいますよね。

もちろん、住所録リストから必要な情報をコピペして使うこともできます。
そういう意味では敷居は下げられますが、そもそもコピペ自体が煩わしいというか・・

あるいは、Wordの「差し込み印刷」という機能があります。
これはこれで便利ですが、「覚えることが多くてちょっと難点」なんですね(しかもたまにしか使わないとかだと尚更で・・)。

Excelで宛名印刷をするときには、関数を使うと楽に印刷できます。

今回はA4シート3つ折りで封入できる「長形3号(封筒)」の「横向き」としますが、縦向きでもOKですし、縦書きもできます。もちろんハガキサイズでも対応可能です。


使う関数は「VLOOKUP関数だけ」で実現できる


今回の作業で使う関数はVLOOKUP関数だけです。そのため、この関数の使い方がわかっている人は実はすこぶる簡単にできてしまいます。

これから説明しますが、この方法は2つのシートをVLOOUP関数でつなぐイメージです。
2つのシートをVLOOUP関数がつなぐ

とはいっても、いくつか守るべきポイントもありますが・・

まず作業としては、2つのシートを使います。すなわち準備します。

  • 住所録シート:宛名の項目が揃っているデータが入力されている
  • 宛名印刷用シート:宛名、住所など「枠」が用意されている

この2つのシートがあれば宛名印刷ができます。
当ページをご覧になっている方は、もしかしたら住所録シートは用意されているかもしれません。その場合はこのシートに付け加える作業になります。

住所録シートの下準備(列を1つだけ追加する)


住所録のリストについては、多少の下準備が必要になります。

下記の画像の通りである必要はありませんが、リストには「重複しない通し番号」必要です。
住所録のシートの右側に通し番号を振る

この番号を持った列を追加(挿入)します。
もしも、すでに重複しない通し番号を持っている列があれば、それでもOKですが、宛名(住所や名前)の左側にある必要があります。

すでにお気づきの方もいらっしゃるかもしれませんが、この「通し番号」をVLOOKUPで使用します。
宛名側シートからVLOOKUP関数で、この番号を探すために使用します。そのため、番号が重複すると正しい結果を返さないのですね。

通し番号(画像では「No」のA列)は、「リストの一番左側」に持ってくるのが無難です(VLOOKUP関数の仕様上、キーの左側にある列の値が取得できませんので)。

他に気をつける点としては多くはありませんが、画像のように「セルを結合しない」、「住所の列に会社名を入れない」などです。

これで、住所録シートの準備は以上です。簡単ですネ(笑)

宛名の印刷シートを作成する(印刷範囲、宛名表示セルを決めるなど)


では、次に印刷用のシートの作成をしたいと思います。
まずは新規のシートを作成し、このシートを実際に印刷するためのシートにします。

※ここでの手順はこの通りでなくても大丈夫です。

最初に用紙種類の種類と向きを決めておきます。
(ここでは上記に挙げたリストを使った宛名印刷を前提に進めていきます)

印刷シートで「印刷範囲」を設定する

宛名を印刷するシートができたら、次に印刷範囲を決めます。冒頭でも触れていますが、用紙サイズはプリンタが対応次第で、極端に言えばサイズは問いません。

サイズについては、自社で実際に使用している方法として、たとえばA4サイズの窓あき封筒用の印刷などもしています。

封筒の窓(左上)の部分にA4用紙に印刷した宛名が出てくるようにしています。

ここでは、印刷範囲をわかりやすくするために、空のシートのセルに仮の文字をいれます。
そこで住所録のセルの内容をコピペします。
宛名用のシートに宛先情報などを仮置する

実際に印刷したときのイメージで貼り付けますが、位置は適当でも大丈夫です(位置が悪ければ、後で修正します)。

この状態で印刷の範囲を設定します。ここでは、印刷プレビューから、「横向き」にして「長形3号封筒」を選択します。
印刷したいサイズを選択する

設定をしましたら、次に「改ページプレビュー」を使います。

ここで大事なポイントがあります。
それは、印刷範囲で「1行目を含めない」ようにすることです。
1行目を印刷範囲から外しておく
マウスで太い青の枠線を下にドラッグすると1行分印刷範囲を縮めることができます。
この1行目には、VLOOKUP関数の引数を設定します。そのため、印刷には不要なので空けています。

住所や宛名を表示する「セルの位置」を決める

次に「宛名セルの位置決め」を行います。

なお、印刷プレビューの状態では、見づらいので、標準に戻しています。
このときに、薄いグレーで印刷範囲が囲われていますので、この範囲の中で住所や名前をどこのセルに表示するか決めます。
なお、印刷プレビューで見るときと、シートで見るときで余白の扱われ方が異なっています。
もっと印刷の範囲を広げられる

これは、簡単に言うと、「もっと余白取れるよ」という意味です。「もっと印刷範囲を広くとっても大丈夫よ」という意味です。
したがいまして、セルに行列を挿入しました。

また、最初だけの作業として、インクと用紙が無駄になってしまいますが、実際にテスト印刷しながらセルの位置を決めていってもよいと思います。

フォントのサイズ、色も自由に調整できますので、お気に入りの形にします。
印刷位置を決める


1行目に番号を入れる

先ほど、宛名シートの1行目を空けておくようにしましたが、この行には、VLOOKUP関数が使用するための引数を入れる枠を用意します。

セルA1に「No」という項目名、セルB1に実際に番号を入れるようにします。ここではわかりやすいように枠線と色をつけてみました。
1行目にNoを設定する


VLOOKUP関数を設定する


さぁ、いよいよ、上記の設定ができたら関数を設定していきます。

VLOOKUP関数の出番です。
ここで利用するのが住所録リストと印刷設定で入力した1行目の「No(セルB1)」です。Noとは何を指しているのかというと、住所リストのNoを指しています。

やることは簡単です。
事前にコピペで入れておいた宛名のセルがありますよね。
このセルに入力している宛名を消して、代わりにVLOOUP関数を入れるだけです。
セルにVLOOUP関数を入れる
VLOOUP関数で郵便番号を取得する

同様にして他のセルにもVLOOKUP関数を入力していきます。

それぞれのセルで異なるところは、第3引数の部分です。
他のセルもVLOOUP関数を入力し、第3引数を変える

これで作業は終わりです。後は関数が正しく動くかを確認するために印刷用のNoを変えて見ます。
VLOOKUP関数の確認

上記で、Noを設定 → 印刷 → (次の)Noを設定 → 印刷 →・・・・(繰り返し)の流れになります。


この方法のメリットとデメリット


上記の方法を行うことで宛名印刷は可能です。この方法を行えばWordやAccess連携などは不要になります。
ただし、以下の点も考慮する必要が出てきますので適宜使い分けを考えながら使ってみてください。

主なメリット


メリットはいくつかありますが、この方法で宛名印刷を行うとき、レイアウトが調整できることを挙げたいです。
いわゆる「Excel方眼紙」に対応できますので。
※参考Excel方眼紙について

  • Excelだけで印刷できる(Word、Accessなど他のソフトが不要)
  • 初回に関数を設定したら後は数値や簡単な文字の入力だけで事足りる
  • 印刷用シートのレイアウト(項目の追加、項目の位置、画像等)を自由に調整できる

下記は封筒の右下の余白部分に図形を入れるようにしました。A4サイズに普通に印刷するのと同じ感覚で図形や文字を配置できます。
レイアウトが自在

主なデメリット


最大のデメリットは連続印刷ができないことですね。
「1通印刷したら、Noを変える」の単純な繰り返しですが、これができないのが痛いところです。
(マクロを使えば、サクッとできますが・・)

  • (自動)連続印刷ができない
  • 住所録の規則性が必要(セル結合などがあるとVLOOKUPで正しい値を見つけられない場合あり)

(おまけ)ハガキのサイズ(縦書き)はこうなる

おまけです。下記はハガキのときの画像です。
ハガキのサイズ

住所と宛名の部分は、セルの書式設定で縦書きに変更します。
セルの書式設定で縦書きに設定する

いいねーと思われた方はぜひぜひお試しください。

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