F 文字列操作

FIND関数 配列で一度に複数検索できる

投稿日:2018年1月23日 更新日:

FIND関数

FIND関数(ファインド関数)、検索したい文字列が何番目にあるか調べる関数。

先日記事にしたMID関数と合わせてまた説明したいと思います。

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関数に関しては、以下リンクで記事にしています。

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】

 

-F, 文字列操作
-, , , , , , , , , , , , , , , , , , , , , , ,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事







  • 1,122,955 アクセス