ExcelのFIND関数!文字列操作関数LEFT関数などと一緒に覚えよう!②
前回の記事にてFIND関数とLEFT関数を利用し、住所から「県名」を抜き出す作業をしました。
#VALUE!のエラーが出ています。
ここには=LEFT(A7,FIND("県",A7))の関数が入っています。
LEFT関数の文字列に「京都府京都市下京区」が入り、文字数の箇所にFIND関数を入れています。
しかし、FIND関数の検索文字にあたる「県」が「京都府京都市下京区」にはないため、エラーとなっています。
このエラー値を出ないようにしていこう!!というのが、本日の記事になります。
前回記事の詳細は以下より、ご覧ください。
ISERROR関数を用いてエラー値かどうかを調べよう!!!
今回の住所を県とそれ以降で分けるというやり方は、多数存在します。
今回はFIND関数を使ったやり方をご紹介します。
その場合、今回のISERROR関数が必要になりますので、まずはこの関数の説明から。
この関数を先ほどの住所でどのセルがエラーなのかを調べてみます。
テストの対象には、B列を入れます。
B2~B6までは、県名が表示されており、エラーではないため、「FALSE」となります。FALSEで「偽」や「間違い」といった意味合いがあります。
しかし、B7は住所の中にFIND関数で探した「県」が存在しないため、エラーになっています。よってISERROR関数も「TRUE」を返しています。
TRUEには「真」といった意味合いがあります。
エラーが出ればTRUE
エラーが出なければFALSE
ちょっとややこしいですね。普通逆な気がしますが。。。
では、このISERROR関数を利用した場合、どうやって都道府県名を抜き出すのか。
今回エラー値になるのが、県名が付かない都道府の場合です。
東京都、大阪府、京都府、北海道
エラーにならないのが、残りの43県です。
答えが2種類に分岐します。住所の都道府県名に県があるか、ないかですね。
なので、答えが分岐するため、IF関数を利用します。
論理式のイメージとしては、
もし、住所の列に県名がなくエラーだったら、、、
といったものになります。
この論理式の作り方は、言語化ができるようにしてください。
今すぐでなくても、もちろんいいです。おいおいできるようになってきます。
自分の言葉で置き換えることができないと、論理式はなかなか作ることが難しいです。
IF関数の論理式は、
もし、住所の列に県がなくエラーだったら、、、です。
真の場合は、エラーだった場合の値を返します。
なので、今回の場合は、都道府の場合ですね。
この都道府の場合は、東京都、大阪府、京都府、北海道と全部左から3文字とれば、解決します。
よってLEFT関数で左から3文字とってあげるといいですね。
偽の場合は、エラー出なかった場合です。
なので、住所の列に県があったらですね。
この場合は、愛媛県や広島県と県が3文字目に来るものと、神奈川県や鹿児島県といった県が4文字目に来るものとわかれるため、LEFT関数、FIND関数を利用しましょう。
やり方は、上に書いたやり方で大丈夫です。
ちょっと長いですね。ですが、セル番地さえ変えれば使えますので、丸暗記でもいいと思います。
今回は、ISERROR関数を使ってみましたが、見た通り少し長いです。
こう長いとなると、何かの拍子にエラーが発生したりしてしまうと、修正がしづらくなってしまいます。
次回③はISERROR関数と似た関数を利用して、少し短くなる方法をご紹介いたします。
プロフィール
神雄四季について知りたい方はこちら。
サイトマップ
記事一覧表を作成しました!
最後までお読みいただき、ありがとうございました。
フォローやスキをしていただくと、励みになります!!
この記事が気に入ったらサポートをしてみませんか?