こんにちは。開発チームの山本です。
今回のコラムは、住所リストでよくある「都道府県を分ける」時に便利な関数をご紹介いたします。
MID関数・LEFT関数を使って都道府県を抽出
都道府県ごとの分析やシステムへのデータ取り込みの際、都道府県と以降の住所を分ける必要がある場合があります。しかし、最初から都道府県がもともと分かれているデータを支給されることはあまりありません。
EXCELでは文字列操作の関数を使用して住所から都道府県を抽出する方法があります。
都道府県は1都1道2府43県の、計47ありますが、大半が「県」を含んだ3文字になっています。県を含まない場合も「北海道」「大阪府」などは3文字です。
例外として、「神奈川県」など、「県」を含んだ文字が4文字になる都道府県があります。
こういった特徴から、計算式は「4文字目に“県”という文字がある場合は4文字目まで抜き出し、そうでない場合は3文字目まで抜き出す」という考え方で式を作成します。
C2のセルに、下の計算式を入力します。
=IF(MID(B2,4,1)="県",LEFT(B2,4),LEFT(B2,3))
「B2の文字列の左から4文字目が「県」の場合は左から4文字目まで、そうでない場合は左から3文字目までを反映させる」という計算式です。
セルC3以降にも同じ計算式を入力しました。
すべての都道府県が無事反映されています。
都道府県を取り出したら、次はD列に都道府県以降の住所を反映させます。
もともとの住所(B列)から、C列の都道府県を抜けばいいだけです。
セルD2に入力する計算式は
=SUBSTITUTE(B2,C2,"")
「セルB2の文字列を見て、セルC2と同じ文字列を削除する」
という計算式です。
式の中の「""」は、文字列をくくる記号です。「""」の中には何も入っていないので結果的に削除ということになります。
もし、「"●"」とすると、下の図の様に「東京都」の部分が「●」に置き換わります。
住所が都道府県と以降の住所に分けられたら、最後は忘れずに計算式で反映されたCとD列を文字列に直しておきましょう。
計算式が入った範囲をコピー→同じ場所にカーソルを合わせ右クリック→値を指定して貼り付け、その際に「文字列」を選択して貼り付けます。
この作業を行えば、B列を削除してもCとD列の住所は消えません。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
「情報をリストにまとめる~システム登録」までの作業をすべて一人で行う場合や、最終的に特定のシステムにデータ取り込むことが分かっている場合などはあらかじめ必要に応じてセルを分けておく事が出来ますが、都合よくいかない場合も多いかと思います。
情報量が多くても少なくても、関数を使用すると手作業で入力するより時間短縮はもちろんタイプミスもおこらず効率的ですので、住所データを取り扱う際には今回ご紹介した関数をぜひご活用下さい。
【EXCEL術】住所の都道府県を分ける方法②、では、関数を用いずに都道府県を分ける方法をご紹介しています。