2023年8月9日【ID:0】
【Excel】住所から都道府県のみを抽出
以下の表の住所から都道府県のみを抽出する数式を作成する方法について解説していきます。

法則性の確認
文字列の中から特定の文字列のみを抽出する場合は、抽出する法則性を考えると実現しやすいです。
→逆に法則性が見つからないものを正しく抽出することはできません。
都道府県の場合、以下のような法則があります。
・基本は3文字「○○県、北海道、東京都、…」
・例外として「神奈川県、和歌山県、鹿児島県」が4文字
・市区町村に"県"から始まるものはない
上記の3点を踏まえると、以下のような抽出する法則を見つけることができます。
・住所の先頭から4文字目が"県"の場合は、先頭から4文字が都道府県、それ以外は、先頭から3文字が都道府県
上記の内容を数式で表現していきます。
数式の作成
必要な関数は、MID関数、LEFT関数、IF関数になります。
=MID(文字列, 開始位置, 文字数)
// 指定した文字列の指定した開始位置から指定した文字数を抽出する
// MID(住所のセル, 4, 1)とすると、住所の先頭から4文字目の1文字を抽出できる
=LEFT(文字列, 文字数)
// 指定した文字列の先頭から指定した文字数を抽出する
// LEFT(住所のセル, 4)とすると、住所の先頭から4文字を抽出できる
=IF(論理式, 値が真の場合, 値が偽の場合)
// 指定した論理式を満たしている場合は、「値が真の場合」で指定した値(数式)を返す
// 満たしていない場合は、「値が偽の場合」で指定した値(数式)を返す
実際に、これらの関数を組み合わせた数式は以下になります。
=IF(MID(B2,4,1)="県",LEFT(B2,4),LEFT(B2,3))

後は、この数式を表の一番下までコピーすることで、都道府県のみを一括で抽出することができます。
