都道府県とそれ以下を取り出す方法(EXCEL)

2 min 2,211 views

エクセルの顧客データを使う販促計画やマーケティングの際、一つにつながった住所データから県名や市区町村名を抽出したいケースはありませんか?
少量であれば手作業で問題ないですが、膨大な数だと考えただけで気が遠くなります。
そんな時に使える関数をご紹介します。
面倒であれば、下記の関数をコピーしてお使いください。
ここで使う関数は、下記の5つです。

=IFERROR(値,エラーの場合の値)

引数名説明
値(必須)エラーかどうかをチェックする数式やセル参照を指定します。
エラーの場合の値 (必須)第1引数「値」がエラーの場合に返す値を指定します。

=FIND(検索文字列, 対象, 開始位置)

引数名説明
検索文字列 (必須)検索する文字列を指定します。 重要:ワイルドカード文字は使用できません。
対象(必須)検索文字列を含む文字列を指定します。
開始位置 (省略可)検索を開始する位置を指定します。省略すると、1 として処理されます。
重要:開始位置を指定した場合でも、対象の先頭文字からの位置が返されます。

=LEFT(文字列, 文字数)

引数名説明
文字列(必須)取り出す文字を含む文字列またはセルを指定します。
文字数(省略可)文字列の左端から取り出す文字数を数値で指定します。
重要:省略すると、1 として処理されます。

=REPLACE(文字列, 開始位置,文字数, 置換文字列)

引数名説明
文字列(必須)置き換える文字を含む文字列またセルを指定します。
開始位置(必須)置き換えたい文字の位置を数値で指定します。
重要文字列の先頭文字は 1 から数えます。
文字数(必須)置き換たい文字列の文字数を指定します。
置換文字列(必須)置き換える文字列を指定します。

=MID(文字列, 開始位置, 文字数)

引数名説明
文字列(必須)取り出す文字を含む文字列またはセルを指定します。
開始位置(必須)文字列から取り出す位置の先頭を数値で指定します。
重要文字列の先頭文字は 1 から数えます。
文字数 (必須)取り出す文字数を指定します。

1 住所から都道府県だけ抜き出す方法
都道府県は【〇〇県】の他に4つ(北海道、東京都、大阪府、京都府)あり全て3文字です。
ですから「県があれば県まで取り出し、県がなければ3文字取り出す」でOKです。
=IFERROR(LEFT(A2,FIND(“県”,A2)),LEFT(A2,3))

2 住所から都道府県以下を抜き出す方法
「県があれば県までを削除し、県がなければ3文字削除」で都道府県以下を取り出すことができます。(削除はREPLACE関数で空白に置換)
FIND関数で”県”を探すと存在しない場合にErrorが返ることを利用して「県があるなら県まで削除、なければ3文字削除」とします。
=IFERROR(REPLACE(C2,1,FIND(“県”,C2),””),REPLACE(C2,1,3,””))

3 住所から市区を抜き出す方法
住所には「神奈川県横浜市中区」のように市と区両方使う住所があるので単純に〇〇市まで、〇〇区までを取り出せません。ですから「市を含むなら市まで、それ以外は区まで」で取り出しましょう。(群や村などは適宜取り出してください)
この式は長いのでコピーしてお使いください。
=IFERROR(MID(A2,FIND(“県”,A2)+1,FIND(“市”,A2)-FIND(“県”,A2)),IFERROR(MID(A2,4,FIND(“市”,A2)-3),MID(A2,4,FIND(“区”,A2)-3)))

関連記事