今回は住所から都道府県を取り出すときに、関数を使って処理する方法をご紹介します。
この作業で使用する関数は以下の関数です。
IF関数・・・条件によって結果を分ける関数
MID関数・・○文字目のところから○文字分取り出す関数
LEFT関数・・先頭(左端)から数えて○文字分取り出す関数
今回は上記の関数をいろいろ組み合わせて式を作ります。
※複数の関数を組み合わせて式を作ることを「ネスト」といいます。
住所から都道府県を取り出す
上の表データには
「兵庫県」「奈良県」「熊本県」「福岡県」「和歌山県」「大阪府」「京都府」「神奈川県」
以上、8つの都道府県名が入っています。
ネックは3文字の件と4文字の件が混ざっているところです。
全て3文字の都道府県であればLEFT関数を使って
「B3のセルのデータを左端(先頭)から3文字ぶん取り出す」という式で良いのですが、
これだと、「和歌山県」「神奈川県」のような4文字の県が出てくると、対応しきれません。
式を考える
まずは、どんな式にすれば良いかを考えます。
都道府県名は基本的に3文字のものが多いです。
47都道府県の内、4文字の県は「神奈川県」「和歌山県」「鹿児島県」の3つのみ。
3つとも最後の文字が「県」で終わっていますね。
ここがポイントです。
「もし、住所の4文字目が「県」なら先頭から4文字分を取り出す。そうでなければ3文字分を取り出す」
という考え方でうまくいきそうですね。
関数を挿入する
では、早速セルC3に関数を挿入します。
今回は答えを2通りに分けないといけないので、最初に使用する関数はIF関数です。
IF関数は【論理式】【真の場合】【偽の場合】の3つの引数からなっています。
考え方としては下の図の通りです。
論理式とは「真の場合」の答えを返す場合の条件に当たるものです。
今回の論理式の考え方としては「住所の4文字目が「県」と等しければ・・・」と考えます。
ここで必要なのがMID関数です。
IF関数の第一引数である論理式のところにMID関数をネストします。
※ネストをする場合は関数ボックスの右側の▼ボタンをクリックします。
※でてきた一覧に使いたい関数がない場合は「その他の関数」から探してください。
MID関数の引数を設定します
【文字列】セルB3のデータの
【開始位置】4文字目から
【文字数】1文字分取り出す ⇒結果【神】
ここまでできたら数式バーのIFのところをクリックして、IF関数の引数ダイアログボックスに戻ります。
IF関数の引数ダイアログボックスの論理式のMID関数に続けて「=”県”」と入力します。
論理式が出来上がれば、次は真の場合と偽の場合の値を入れていきます。
今回は、ここにも関数をネストします。
ここでネストをするのはLEFT関数です。
下図のように真の場合と偽の場合のそれぞれにLEFT関数をネストします。
【真の場合】はセルB3の先頭から4文字分取り出す。
【偽の場合】はセルB3の先頭から3文字分取り出す。という意味になります。
今回は論理式の結果がFALSEなので偽の場合の「兵庫県」となっていますね。
ここまできたら、「OKボタン」をクリックします。
後はセルC3の関数をオートフィルすれば完成です。
住所から都道府県を取り出す方法は他にもいくつかありますが、今回は一番簡単な方法で説明してみました。
関数は組み合わせることによって、とても便利に使えますので、色々試してみてくださいね。