2/05/2016

Excel。address。住所から都道府県を抽出する方法を改めてご紹介。


Excel。住所から都道府県を抽出する方法を改めてご紹介。

<LEFT+IF+MID関数>


2013年9月1日の投稿で、住所から都道府県を抽出する方法をご紹介しておりますが、
やり方を聞かれることが最近ちょこちょこありましたので、
前回とことなる方法というか、もうちょっと、
コンパクトな方法で今回はご紹介していきましょう。

下記のような表があります。

このようにB列の住所のデータから、
C列に都道府県を抽出して表示したいというのが目的です。

このような場合、あるパターンを見つけることが出来れば、
それをどう表現するのかを考えればいいわけです。

そこで、今回は、左側から、
何文字目までが都道府県なのかを判断する方法を見つける必要があるという事です。

まず、注目するのは、都道府県のそれぞれの文字ではなくて、県。
しかも、神奈川県・和歌山県・鹿児島県の3県が問題だということに気づいてきます。
これら3県だけが、先頭から4文字目に都道府県の区切りが来るわけです。

なので、抽出するには、4文字目が県だったら、左から4文字目までが都道府県で、
それ以外は左から3文字目までが、
都道府県ということを表現する数式を作っていけばいいわけです。

では、C列を一度削除して、C2に数式を作成していきます。

最初登場するのは、左から指定の文字数を抽出できる、
LEFT関数を使いますので、LEFT関数ダイアログボックスを表示しましょう。

文字列には、B2を入力します。

文字数には、4文字目なのか、3文字目なのかということを判断させる必要がありますので、
ここには、まず、IF関数をネストしていきますので、
IF関数ダイアログボックスを表示させていきましょう。

関数の挿入ボックスからネストしたい関数を選択すれば、簡単にネストを設定できますよね。

先に、真の場合と、偽の場合を設定しておきます。
真の場合は、4
偽の場合は、3
と入力して、論理式を作っていきます。

論理式には、4文字目が県かとうか?という質問文を作っていきますので、
ここには、4文字目の文字が何なのかを算出できる。MID関数を使っていきましょう。

では、まずは、MID関数をネストしていきますので、MID関数ダイアログボックスを表示しましょう。

文字列には、B2
開始位置は、4文字目を判断させますので、4
文字数は、4文字目から何文字ということなので、4文字目だけなので、1

そうしたら、IF関数が作りかけですので、戻る必要がありますので、
数式バーのIF関数のIFという文字をクリックして、IF関数ダイアログボックスを表示しましょう。

論理式を完成させますので、
MID(B2,4,1)の後ろに、="県" と追加しましょう。

最後にOKボタンをクリックして、数式をコピーしましょう。

これで、都道府県を抽出することが出来ましたね。

数式は、

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

と結構コンパクトな感じで仕上げてみました。

明治維新のときに、廃藩置県をしたのだから、
その時に、旧国名のように、漢字2文字とか漢字3文字と決めて統一しちゃえば、
こんな面倒なことにならなかったんでしょうね。

まぁ、関数のテクニックをあげるには、打ってつけの素材ですから、
皆さん独自のアイディアで数式を考えてみてはどうでしょうか?


Excel。住所から都道府県を抜き出す方法 IF+MID+LEFT関数

http://infoyandssblog.blogspot.jp/2013/09/excel-ifmidleft.html