FIND関数
FIND関数(ファインド関数)、検索したい文字列が何番目にあるか調べる関数。
先日記事にしたMID関数と合わせてまた説明したいと思います。
FIND関数は、検索したい文字列が、何番目にあるか取得する関数。
検索文字列は 道 。
対象は住所リスト。
検索開始位置は1つ目から。
すると3番目ですよ、とかえってくる。
しかし、何番目にあるかわかっても・・・
どう活用したらよいのか?
私は以下の様に使います。
住所リストがある。
都道府県と市などを、別々にしたいとする。
でも一度に、ひとつの式だけで、ぱぱっと取得したい。
まず空いているセルに、都、道、府、県と入力しておく。
=MID(B3,1,MAX(IFERROR(FIND($F$2:$F$5,B3,1),””)))と入力する。
とつぜんややこしい式ですが、細かく説明します。
まず、FIND($F$2:$F$5,B3,1)ですが、本来なら検索文字列は一つしか指定できません。
しかし、$F$2:$F$5(都道府県)を一気にしてい出来るのが便利なところです。
配列関数を使う方法なので、このように一気に検索文字列を指定できます。
配列については、またじっくり説明したいと思います。
FIND($F$2:$F$5,B3,1)を、IFERROR関数で包み込むのには意味があります。
{#VALUE!;3;#VALUE!;#・・・}とあるように、{当てはまらない;3番目です;当てはまらない・・・}と関数は返しています。
なので、IFERROR関数で包み込み、エラーの場合は””(空白)にしてくださいと指示しているのです。
で、次にMAX関数で包んでいます。
{当てはまらない;3番目です;当てはまらない・・・}の中で、一番大きな数字を返してくださいと、指示しているのです。
MAX関数に関しては、以下リンクで記事にしています。
そして配列関数のポイントが、数式バーにある、式をドラックして選択。
shift + Ctrl + Enter をキーボードで押します。
これが配列関数のポイントです。
そして前回の記事のMID関数で包みます。
これで一気に都道府県を検索して、MID関数で取り出せるわけです。
市区を取り出す方法も、MID関数で記事にした通りの応用です。
=MID(B3,MAX(IFERROR(FIND($F$2:$F$5,B3,1),””))+1,10)
開始位置に、1を足すところも同じです。
配列を使えば、短い式で、一気に取得する事が出来ます。
派遣社員ランキング
Microsoft Officeランキング
にほんブログ村 Windows
エステ・脱毛・フェイシャルのエルセーヌ
★月々100円(税抜)からオンラインショップを運営!
独自SSL・高機能カート・クレジット決済が簡単導入
年間920円(税抜)からの格安ドメイン取得サービス─ムームードメイン
レンタルサーバーなら【Z.com】