関数 EXCEL&VBA

EXCELで住所を都道府県と市区町村以下に分割する




今回のテーマは、EXCELで『住所を都道府県と市区町村以下に分割する』です。

顧客や取引先、スタッフの住所情報を専用ソフトではなく、Excelで管理している人はまだまだ多いのではないでしょうか。

その住所情報を統計データとして活用する際に『都道府県』と『市区町村以下』にセルを分割して管理できると活用の幅も広がります。

「都道府県別データ」を取得するには必須のワザですね。
きっと役立つのでぜひ読んでいってください。

都道府県の文字数の特徴をつかむ

日ごろ当たり前のように目にしている都道府県名ですが、その文字数に注目すると大きな特徴に気づきます。

まず、都道府県の大半が「3文字」だということ。北海道も大阪府も3文字、いまさらですが。

そして、例外は「神奈川県」「和歌山県」「鹿児島県」の3つだけ で、いずれも「県」であること。

これらの特徴を関数で活かして、住所を都道府県と市区町村以下に分割します。


住所から都道府県を切り出す

住所の4文字目に着目

上で述べた特徴から、住所の4文字目に着目し 4文字目が「県」である場合は住所の先頭から4文字を切り出し、それ以外の場合は3文字を切り出し ます。

そして、これを実現するためには 以下の3つの関数を使用します。

MID関数

住所の4文字目が「県」かどうかを判定するために使うのが、MID関数 で数式は;

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

のように表されます。

LEFT関数

先頭(左端)から○文字 を切り出すのに使うのが LEFT関数 です。数式は;

= LEFT ( 文字列, [文字数] )

のように表されます。
※文字数を省略した場合、1文字として認識します。

IF関数

「もし先頭から4文字目が『県』なら~、そうでなければ~」という条件式に使われるのが IF関数 で;

= IF ( 論理式, 真の場合, 偽の場合 )

のように表されます。

都道府県を切り出す

では、住所を都道府県と市区町村以下に分割するために、実際に3つの関数を組み合わせて都道府県を切り出してみます。

サンプルとして下のような住所データを使います。
都道府県から番地まで、すべて1つのセルに格納されています。

そして、B列のセルに 関数を入力して都道府県のみを抽出します。

セルB2に入る数式は;

= IF ( MID ( A2, 4, 1 ) = "県", LEFT ( A2, 4 ), LEFT ( A2, 3) )

となります。
住所の先頭から4文字目が『県』なら、左から4文字を、そうでなければ3文字を抽出しなさい」ってことです。

この数式を下のセルにもコピーすると、B列のセルにはきれいに都道府県だけが切り出されました。

▲3文字、4文字関係なくきれいに切り出せました



住所から市区町村以下を切り出す

住所を都道府県と市区町村以下に分割する次のステップは、C列に市区町村以下を切り出します。
それにはB列で切り出した都道府県の文字を利用します。

置換の SUBSTITUTE関数 を使って、都道府県の文字を""(空白)に置換すれば完成です。

SUBSTITUTE関数

セルC2に入る SUBSTITUTE関数 の数式は;

= SUBSTITUTE ( A2, B2, "" )

「セルA2の文字列の中でセルB2の文字を空白に置き換えた結果を返しなさい」ってことです。
すると;


きれいに 市区町村以下が切り出せました。

最後に数式を最終行までコピーして完成です。

▲完成!!

以上で Excelで住所を都道府県と市区町村以下に分割する方法の解説は終了です。
みなさんの仕事に少しでも役立てば幸いです。

関連記事・広告



併せて読んでおくと便利

郵便番号から住所に変換・住所から郵便番号を出力する|Excelのキホン
ASC関数・PHONETIC関数
エクセルで郵便番号から住所に変換、逆に住所から郵便番号を求める方法を解説。エクセルに住所を入力するときには、郵便番号から住所に変換して入力作業を効率化できます。

EXCELで地図を描く|私鉄・JR・河川・道路もきれいに描ける
エクセル・地図
Excelで地図を描く方法を解説します。私鉄やJRの線路や道路、河川の描き方やアーチ状のテキスト配置など、最寄駅から自宅や店舗までの地図を描いてみませんか?

EXCELで「文字列の置換・削除」方法をパターン別にまとめた
関数・文字列操作
Excelの特定の文字を削除したり文字列を置換(置き換え)したり、文字列に含まれる余分なスペースや文字を削除したりする方法のまとめです。置換の関数や削除の関数をパターン別に例示し...



EXCELの行や列を折りたたむ「グループ化」をマスターしよう
グループ化
行や列を折りたたむ「グループ化」の機能について解説。たたむ・展開するの切替えはワンタッチで簡単!この グループ化 で見た目もすっきり、そして機能的な作表に挑戦しましょう。

※その他関連記事は、このページの下の方にもあります。




-関数, EXCEL&VBA
-, , ,