エクセル住所録から県名だけを抽出することができますか?
エクセルの関数を使えば簡単に可能です。都道府県名だけを抜き出す場合には、IF関数・LEFT関数・MID関数を組み合わせます。
文字列の一部を抽出する。
・LEFT関数:文字列の左から指定した文字数だけを取り出す
・RIGHT関数:文字列の右から指定した文字数だけを取り出す
・MID関数:文字列の途中を指定した文字数だけを取り出す
それぞれの関数の決まりは以下の通りです。
たとえば、「東京都千代田区丸の内2丁目4」という文字列から一部の文字だけを抜き出す場合について考えてみたいと思います。
この時、都道府県名を抜き出す場合はLEFT関数を使います。
=LEFT(A1,3) → 結果:東京都
番地だけを抜き出す場合には、RIGHT関数を使います。
=RIGHT(A1,4) → 結果:2丁目4
区だけを抜き出す場合には、MID関数を使います。
=MID(A1,4,4) → 結果:千代田区
簡単ですよね。「ここまでは知っている」という方も多いのではないでしょうか。続いて、応用編に移りたいと思います。
複数の関数を組み合わせて都道府県名だけを抜き出す方法
さきほどの例では「東京都」を抜き出すことができましたが、住所データがたくさんある場合、それぞれを指定していては大変です。
なのでいくつかの関数を組み合わせて、自動で都道府県名だけを抜き出す方法をご紹介します。
都道府県名だけを抜き出す場合には、IF関数・LEFT関数・MID関数を組み合わせます。結論から言うと以下の式で抜き出すことができます。
=IF(MID(A1,4,1)=”県”,LEFT(A1,4),LEFT(A1,3))
すこし複雑に見えますが、分解してみれば中身は簡単です。IF関数は「=(論理式,値が真の場合の条件,値が偽の場合の条件)」で定義されます。
そのためこの式は、「4文字目が『県』であれば4文字目までを抜き出し、そうでなければ3文字目までを抜き出す」ということを意味しています。
※前提として都道府県名の中で4文字なのは神奈川県・和歌山県・鹿児島県のみ。したがって、文字数が異なっていても、正確に都道府県名を抜き出すことができます。
さらに、都道府県名とそれ以外を分ける場合には、LEN関数を使用します。LEN関数は文字数を抽出する関数で、住所から都道府県の文字数だけを抜き出すことで、都道府県以下を分けます。
【都道府県以下を抽出する式】
=RIGHT(A1,LEN(A1)-LEN(B1))
氏名を苗字と名前(姓と名)に分ける方法
関数を使えば、1つのセルに入力されたフルネームを苗字と名前に分けることも可能です。
ここではFIND関数を使います。FIND関数は、ある特定の文字が文字列の中の何文字目に位置しているのかを探す関数です。
たとえば、「山田 太郎」から苗字のみを抽出するには「=LEFT(A2,FIND(“ ”,A2)-1)」と入力します。この式は「文字列の先頭から、全角スペースの左に1文字ずれたところまでを抜き出す」ということを意味しています。
もちろん、以下のようにRIGHT関数とFIND関数を組み合わせることもできます。
日付から年・月・日を抽出する方法
最後に文字列の扱いではありませんが、日付から一部の情報だけを抽出する方法をご紹介します。使い方はいたって簡単なので、覚えておくと役に立ちますよ。
YEAR関数:日付データから年だけを取り出す
MONTH関数:日付データから月だけを取り出す
DAY関数:日付データから日だけを取り出す
DATE関数:異なるセルに収められた年、月、日データを1つのセルに日付としてまとめる
まとめ|関数を使えば時短につながり、入力ミスも減る
LEFT関数・RIGHT関数・MID関数はもちろんのこと、ほかの関数(LEN関数やFIND関数など)との組み合わせが自分でできるようになれば、いまよりももっとExcelでの作業が楽になります。
時短につながるだけでなく、入力ミスも減らすことができるので、関数が利用できる状況では積極的に使うよう意識してみましょう。
別の説明・・・LEFT関数、RIGHT関数、MID関数
文字列の左から文字列を取り出す(抽出)
A列に郵便番号が入力されています。
この郵便番号の左側3文字を抜き出すには、B列に以下の式を入力します。
セルB1に=LEFT(A1,3)で、セルA1の文字の左側3文字を抜き出す計算式となります。
この計算式をB2からB10までコピーすれば、完成です。
695-3912 =LEFT(A1,3) 695
695-3912 =RIGHT(A1,3) 912
文字列の左の1文字を削除 LENは文字の長さ調べる
123-4567 =RIGHT(A1, LEN(A1)-1) 23-4567
文字列の左の2文字を削除
123-4567 =RIGHT(A1, LEN(A1)-2) 3-4567
文字列の右の1文字を削除
123-4567 =LEFT(A1, LEN(A1)-1) 123-456
文字列の右から文字列を取り除く 削除
LEFT関数を使った方法
▼操作方法:右からn文字を削除する
※A1セルの文字列の右側7文字を削除してB1セルに表示する例
B1セルに
=LEFT(A1, LEN(A1)-7)
という数式を入力する
LEFT関数は、文字列の先頭から指定された数の文字を返してくれる関数です。
第1引数には元の文字列、第2引数には何文字取得するかをそれぞれ指定します。
■今回のポイントはLEFT関数の第2引数です。
LEN関数を使って、元の文字列A1セルに入力されている文字列が何文字あるのかを調べ、その数値から「7」をマイナスしています。
それが「LEN(A1)-7」の意味です。
これをLEFT関数の第2引数に指定することで、結果的に右から7文字削除した文字列が取得できるわけです。
コメント