住所を「都道府県/市区町村/それ以降」に自動で分割。政令市の区や郡にも対応。エクセルでのやり方(フラッシュフィル・関数)も解説。登録不要・端末内処理。
住所のリストを「都道府県/市区町村/番地以降」の列に自動で分割するツールです。先頭から都道府県を判定し、続く市区町村(政令市の区、郡+町村にも対応)を切り出して、残りを番地以降とします。顧客名簿やリストを都道府県別・エリア別に集計したいときに便利です。登録不要・無料で、データはあなたの端末内だけで処理され、サーバーに送信されません。
Excel上で完結させたい場合は次の3つです。とにかく速いのは①のフラッシュフィル、件数が多く正確さが要るなら②。上のツールは「関数を書かずに、貼り付けて結果をコピーしたい」ときに使ってください。
推測に頼るため、住所の書き方がバラバラだと誤りが混ざります。実行後は必ず目視で確認してください。
都道府県は文字数が3文字か4文字かのどちらかです(4文字は神奈川県・和歌山県・鹿児島県の3つだけ)。この性質を使います。
=LEFT(A2,IF(MID(A2,4,1)="県",4,3))=SUBSTITUTE(A2,B2,"")=LEFT(C2,MIN(IFERROR(FIND({"市","区","町","村"},C2),LEN(C2)+1)))=SUBSTITUTE(C2,D2,"")市区町村の式は配列を使っています。Microsoft 365・Excel 2021以降はそのままEnterで確定できますが、Excel 2019以前は Ctrl+Shift+Enter で確定してください。
市区町村は例外が多い部分です。政令指定都市(例:横浜市青葉区)は「市」で切れるため区が番地側に残ります。郡(例:〜郡〜町)や、名前の途中に「市」「町」「村」を含む自治体(四日市市・野々市市・廿日市市・十日町市・東村山市など)も取りこぼします。上のツールはこれらに対応しています。
住所が「東京都 千代田区 …」のようにスペースで区切られている場合のみ、[データ]→「区切り位置」→「カンマやタブなどの区切り文字」→「スペース」で分割できます。スペースがない住所には使えません。
「都道府県・市区町村」までは上の方法で分かれますが、残った「1-2-3ABCビル5階」から番地と建物名を分けるのは別の難しさがあります。理由は単純で、番地と建物名の間に区切り文字が無いことが多いからです。スペースが入っていれば[データ]→「区切り位置」で一発ですが、入っていないデータのほうが多く見かけます。
考え方は「番地に使われる文字が終わったところで切る」。 番地に出てくるのは数字・ハイフン・「丁目」「番」「地」「号」だけなので、それ以外の文字が最初に現れた位置が建物名の先頭になります。
1-2-3)ABCビル5階 と入力して Ctrl+E建物名の付き方がバラバラでも、例を数件与えれば追従します。ただし推測なので、実行後は必ず目視で確認してください。
番地以降が E2 に入っているとします。
=LET(s,E2,i,SEQUENCE(LEN(s)),c,MID(s,i,1),ok,ISNUMBER(--c)+ISNUMBER(FIND(c,"--ー‐−丁目番地号の")),p,IFERROR(MATCH(0,ok,0),LEN(s)+1),LEFT(s,p-1))=LET(s,E2,i,SEQUENCE(LEN(s)),c,MID(s,i,1),ok,ISNUMBER(--c)+ISNUMBER(FIND(c,"--ー‐−丁目番地号の")),p,IFERROR(MATCH(0,ok,0),LEN(s)+1),MID(s,p,LEN(s)))LET と SEQUENCE を使うため、Excel 2019以前では動きません。その場合は方法Aを使ってください。
実際の結果:
| 番地以降(E列) | 番地(F列) | 建物名(G列) |
|---|---|---|
| 1-2-3ABCビル5階 | 1-2-3 | ABCビル5階 |
| 1丁目2番3号ABCビル5階 | 1丁目2番3号 | ABCビル5階 |
| 12-3-4グランドメゾン301 | 12-3-4 | グランドメゾン301 |
| 3丁目1番地サンハイツ101 | 3丁目1番地 | サンハイツ101 |
| 1-2-3(建物名なし) | 1-2-3 | (空欄) |
うまくいかないケースも正直に書いておきます。 1-2-3号室 のように建物名の側に「号」「番」などの文字が入ると、そこまでを番地と判定してしまいます(1-2-3号/室)。また番地以降が漢数字で始まる住所も分けられません。件数が多い場合は、分割後に建物名の列を並べ替えて、短い値・不自然な値だけ目で確認するのが早いです。
住所が1列にまとまった名簿を、都道府県・市区町村で分けてエリア別の件数を出したいときに。
発送エリアごとの仕分けや、地域別の分析の前処理として使えます。
データはどこかに送信されますか?
いいえ。分割処理はすべてあなたのブラウザの中で行われ、入力した住所が外部のサーバーに送られることはありません。
すべての住所が正確に分割されますか?
自動判定のため、一部の住所は手直しが必要な場合があります。判定できなかった箇所は黄色のセルで表示されるので、その部分だけ確認・修正してください。
番地と建物名も分けられますか?
このツールは「番地以降」を1つの列にまとめて出力します。そこから番地と建物名に分ける手順はこちらで解説しています(フラッシュフィル/数式の2通り・コピペで使える式つき)。区切り文字が無い住所でも分けられます。
「1-2-3ABCビル5階」のように区切りが無くても分けられますか?
分けられます。番地に使われるのは数字・ハイフン・「丁目」「番」「地」「号」だけなので、それ以外の文字が最初に現れた位置で切ります。④ 番地と建物名を分けるの数式をそのままお使いください。
数万件あります。目視で確認しきれません。
件数が多い場合は、分割後に建物名の列を並べ替えて、極端に短い値・数字だけの値を先に確認すると効率的です。それでも手に負えない量・精度が要る場合は、下記の代行をご相談ください。
「数万件の住所を高精度で分割」「番地・建物名まで細かく分ける」「名寄せ・正規化までまとめて」など、ブラウザツールで手に負えない作業はご依頼いただければ代行します(Excel・GAS自動化/データ処理)。まずは無料相談からどうぞ。