郵便番号データをエクセルに取り込んでVLOOKUP関数で郵便番号から住所を出せる方法を紹介します。
この方法は、例えば,郵便番号から住所1(番地の前まで)を自動入力することができるだけでなく,郵便番号がわからないとき,住所の一部を入力して郵便番号と住所を表示(入力)することなども可能です(この場合はユーザーフォームと簡単なマクロを利用します).
これらの操作ができるようにするには,まず郵政公社の郵便番号データをダウンロードしてエクセルのシートに入れる必要があります.
郵政公社の全国版郵便番号データ(http://www.post.japanpost.jp/zipcode/download.html)をダウンロードし、これをエクセルに取り込みます。このとき、郵便番号は10万件以上ありますので、csvファイルをワードなどで開いて、約1/2のところで2つに分割してからインポートします。
具体的には、
1.ワードを立ち上げ、ファイル、開くからすべてのファイルを指定して住所録csvファイルを開く。
2.Ctrl+F(または編集、検索)で検索文字を「静岡」と入れて、ファイルの約半分の部分をみつけ、その部分以降を削除する。(静岡の先頭の部分にカーソルを移動して、Ctrl+Shift+ Endで削除範囲を選択してDelete)
3.適当な名前を付けて保存(テキストファイルで)。同様の操作(Ctrl+Shift+Home)を行い前半部分を保存する。
4.エクセルを起動して、ファイル、開くから、「テキストファイル」ファイルの種類をテキストファイルにして、ウィザードに従ってカンマを区切り文字に指定してエクセルの読み込ます。
5.不必要なデータ(A,B,J列以降)を削除し、例えばA1に「=G1&H1&I1」B2に「=D1&E1&F1」といれて、セルの右下部分をダブルクリックしてオートフィルする。
6.A,B列を選択し、右クリック「コピー」右クリック「形式を選択して貼り付け」で「値」を選択する。そして、C列を一番左の列に移動すれば完成です。
同様に後半部分もエクセルに取り込みます。
この一覧表2つを住所録を作成するブックのシートに貼り付け(データ用のシートのA~C,E~G列に貼り付ければよい)、それぞれ範囲名を北日本、南日本とつけます。
面倒な操作でしたが、以上で準備完了です。
例えば、郵便番号(C列に書いてあるとする)を入力すると(又は入力されたセルから)住所1やふりがなを自動入力させるには、表示したいセルに
=IF(ISERROR(VLOOKUP(C2,北日本,2,FALSE)),VLOOKUP(C2,南日本,2,FALSE),VLOOKUP(C2,北日本,2,FALSE))のように入力すれば郵便番号入力だけで住所1とそのふりがなが入力されます.
また、このデータシートを検索をかければ一部の住所の入力だけで郵便番号や、すべての正しい住所を調べることができます(ユーザーフォームでやれば住所の一部から郵便番号の自動入力が可能です)