Excel一覧 Excel操作・関数 データ操作 住所・郵便番号の取得・変換

【Excel】【VLOOKUP活用】住所から郵便番号を自動入力する方法|実務向け手順と注意点

住所データから郵便番号を自動で入力できれば、手作業での入力ミスや作業時間を大幅に削減できます。
特に企業で顧客リストや配送先リストを作成する場合、数百〜数千件の住所に郵便番号を付与する作業はよく発生します。

本記事では、ExcelのVLOOKUP関数を使って住所から郵便番号を自動取得する方法を、初心者でも再現できる形で詳しく解説します。
あわせて、日本郵便の公式データを使った住所マスタの作成方法や、部分一致対応のコツも紹介します。


✅ 基本の考え方:VLOOKUPで住所から郵便番号を検索

VLOOKUP関数は、指定した検索値を表の左端列から探し、対応する列の値を返す関数です。
「住所 → 郵便番号」に変換する場合は、住所を検索キーとして郵便番号マスタから番号を引き当てます。

・VLOOKUPの基本構文

=VLOOKUP(検索値, 範囲, 列番号, 検索方法)
  • 検索値:探したい住所(例:A2セル)
  • 範囲:住所と郵便番号を含むマスタ範囲
  • 列番号:郵便番号列が範囲の何列目か
  • 検索方法:完全一致の場合はFALSE

参考:【Excel】ISERRORとVLOOKUPを使った〇×判定方法|ステップ解説と実務活用術


✅ ステップ1:郵便番号マスタの準備

1. 日本郵便から最新データを取得

日本郵便公式サイトの「郵便番号データダウンロード」ページからCSVファイルを入手します。
全国版または必要な都道府県版を選び、ZIP形式でダウンロードします。

2. CSVファイルをExcelで開く

ダウンロードしたZIPを解凍し、CSVファイルをExcelで開きます。
必要な列だけを抽出し、「住所」と「郵便番号」の2列に整理しましょう。

例:

住所郵便番号
東京都千代田区千代田1000001
東京都港区芝公園1050011

✅ ステップ2:住所リストとマスタを別シートに配置

効率的に管理するために、以下のようにシートを分けるのがおすすめです。

  • 住所リストシート(例:「住所データ」)
    • A列:住所
    • B列:郵便番号(VLOOKUP結果を表示)
  • マスタシート(例:「住所マスタ」)
    • A列:住所
    • B列:郵便番号

参考:【Excel】VLOOKUP関数を別シートで使う方法とは?|構文・設定手順・実務活用を徹底解説!

✅ ステップ3:VLOOKUP関数を設定

基本の数式

住所データのB2セルに次の数式を入力します。

=VLOOKUP(A2, 住所マスタ!A:B, 2, FALSE)
  • A2 → 検索する住所
  • 住所マスタ!A:B → マスタの範囲
  • 2 → 郵便番号が範囲の2列目
  • FALSE → 完全一致検索

これで、完全一致する住所に対応する郵便番号が表示されます。


✅ 部分一致に対応する方法

現場では、住所に番地や建物名が含まれていることが多く、完全一致ではマッチしない場合があります。
例:

  • リスト:東京都千代田区千代田1-1 グランドビル
  • マスタ:東京都千代田区千代田

この場合、通常のVLOOKUPでは一致せず#N/Aになります。

部分一致式(INDEX + MATCH + SEARCH)

=INDEX(住所マスタ!B:B, MATCH(TRUE, ISNUMBER(SEARCH(住所マスタ!A:A, A2)), 0))

この式は、住所マスタの住所が検索対象セル内に含まれているかを調べ、最初に一致した郵便番号を返します。


参考:【Excel】IFNA関数で複数条件を処理する方法|VLOOKUP・INDEX/MATCH・IFとの組み合わせでExcel作業を効率化

✅ データ整形で検索精度を上げる

郵便番号検索がうまくいかない原因は、多くの場合「住所表記のゆらぎ」です。
精度を上げるために、次の関数で整形します。

  • 全角→半角=ASC(セル)
  • 空白削除=TRIM(セル)
  • 改行削除=SUBSTITUTE(セル, CHAR(10), "")

特に日本郵便データと社内住所リストでは、丁目や番地の書き方が異なることが多いため、統一ルールを決めると良いです。


■ 大量データ処理のコツ

  • マスタ範囲をテーブル化(Ctrl+T)しておくと、データ更新時に範囲を自動調整可能
  • Power Queryを使えば、VLOOKUP不要で結合処理ができ、数万件の住所も高速処理可能
  • 郵便番号データを定期更新(毎月1日など)すると最新の情報を保てる

■ トラブルシューティング

症状対策
#N/A が表示される住所の表記ゆらぎを整形/部分一致式を利用
関数が遅い範囲を最小限に絞る/Power Queryに移行
数字が「100-0001」と表示されないセルの表示形式を「文字列」に設定
マスタ更新が反映されない範囲参照をテーブル名に変更

✅ まとめ

方法特徴
VLOOKUP(完全一致)高速・簡単だが住所表記の違いに弱い
INDEX+MATCH(部分一致)表記ゆらぎに対応できるが少し複雑
Power Query大量データや定期更新に強い

VLOOKUPはシンプルでわかりやすく、少量〜中量データの住所→郵便番号変換に最適です。
ただし、住所の表記ゆらぎやデータ量によっては、部分一致やPower Queryとの併用が効果的です。

-Excel一覧, Excel操作・関数, データ操作, 住所・郵便番号の取得・変換