住所から建物名・部屋番号を分ける方法|Excelで分割できるケースと注意点
住所本体と建物情報をExcelで分ける方法を解説します。区切りが明確なデータの分割方法と、建物名・部屋番号まで機械的に分けにくい自由入力住所の注意点を実画面付きで紹介します。

「東京都新宿区西新宿2-8-1 サンプルビル301号室」のような住所を、住所本体と建物情報へ分けたいことがあります。さらに建物名と部屋番号まで分けたい場合もありますが、自由入力された住所には全国共通の区切り文字が必ずあるわけではありません。
この記事では、住所本体と建物情報を分けること、建物情報から建物名・部屋番号を分けることを別工程として説明します。

まず「住所本体」と「建物情報」を分けて考える
この記事では、都道府県・市区町村・町域・番地などを住所本体、建物名・棟・階・部屋番号などを建物情報として扱います。別項目に整理すると、住所本体の比較、表記整理、建物情報の確認、重複候補の確認がしやすくなる場合があります。ただし、必ず分割保存すべきという意味ではありません。

自由入力住所には万能な区切りがない
「東京都○○区1-2-3 サンプルビル301号室」「東京都○○区1-2-3サンプルビル301号室」「東京都○○区1-2-3-301」は同じ規則ではありません。最後の数字やハイフンが番地、枝番、建物番号、部屋番号のどれかを一律に判定できない場合があります。まず区切り文字や入力規則が実データに存在するかを確認します。
区切りが明確ならExcelで分けやすい
会社側で「住所本体と建物情報の間に半角スペースを1つ入れる」などの入力ルールがある場合は、区切り位置や文字列関数で分けられます。区切り位置は結果が右側のセルを上書きすることがあるため、元データをコピーするか空列を確保してから使います。
TEXTBEFORE/TEXTAFTERを使う方法
Microsoft 365やExcel 2024などでTEXTBEFORE/TEXTAFTERが利用できる場合、最初の半角スペースが境界であると保証されたデータでは、=TEXTBEFORE(A2," ")と=TEXTAFTER(A2," ")で住所本体と建物情報を別列へ出せます。古いExcelで必ず使える関数ではありません。

建物名と部屋番号はさらに別問題
「第2サンプルビル301号室」「サンプル21ビル301号室」「サンプルタワー3F」「A-301」「1号棟301号室」のように、建物名側にも数字、棟番号、階数、ハイフンが含まれます。数字が始まった位置だけで全国共通に分割できるとはいえません。
建物名と部屋番号を機械的に分けるのは、たとえば「サンプルビル|301号室」のように明示的な区切りが入力規則としてある構造化済みデータに限定して検討します。TEXTSPLITやPower Query、Flash Fillは補助になりますが、結果を確認せず自動確定する用途には向きません。
最後のハイフンを部屋番号と決め打ちしない
ハイフンは住所本体にも建物情報にも使われます。自由入力住所の最後のハイフンを部屋番号と決めつけて一括分割すると、住所の意味を壊すおそれがあります。元データを残し、ルールに合わない行は要確認として扱います。
住所データを整理する前に確認すること
- 元データを保存する
- 入力ルールと区切り文字を確認する
- 一部行で試す
- 結果を目視確認する
- ルール外の行は要確認として残す
住所の全角・半角、空白、ハイフンなどの表記を整える方法は、Excelで住所の表記ゆれを整える方法で紹介しています。
住所データをまとめて確認する
住所を整理するときは、元データを残して、機械的に分けられる行と確認が必要な行を分けましょう。
まとめ
住所本体、建物名、部屋番号は、入力ルールや明確な区切りがある場合に分けやすくなります。任意の自由入力住所をExcel関数1本で100%正確に分割できるとは限りません。区切りが曖昧な行は自動処理せず、要確認として残すことが安全です。