FIND関数で右(後ろ)から特定の文字まで検索し抽出する

ここでは、エクセルのFIND関数で「右(後ろ)から特定の文字を検索し抽出する方法」を解説します。

 

「右から特定の文字を検索する」とはどのようなことかの説明と、右側から検索して特定の文字までを抽出できる数式の紹介です。

1.「右から特定の文字まで検索し抽出する」とは

始めに、「右から特定の文字まで検索し抽出する」とはどのようなことか、例を挙げてみてみます。

セルA1に「a-bb-ccc-dddd」という値が入っており、中には「-」が3つあります。

 

まず、「右から特定の文字を検索する」とは、「複数ある文字の一番右側の位置を取得する」ということです。

 

例だと、一番右側の「-」の位置を知るというになります。

 

次に「抽出する」とは、「検索した文字より右側の文字列を抜き出す」ということです。

 

例だと、「dddd」を抜き出すということになります。

つまり、「右から特定の文字まで検索し抽出する」とは、「特定の文字が何個あったとしても、一番右側以降の文字列を抽出する」ということなのです。

2.右から特定の文字まで検索し抽出できる数式

次に、数式の形と使ってみた例を見てみます。

 

2-1.数式の形は

「右から特定の文字まで検索し抽出」できる数式の形は、次の通りです。

=FIND("●", SUBSTITUTE(対象, 検索文字列, "●", LEN(対象) - LEN(SUBSTITUTE(対象, 検索文字列, ""))))

 

入れる引数は「対象」と「検索文字列」で、入れ方もFIND関数の普段の使い方と変わりません。

 

ちなみに、「対象」には検索対象となる文字列が、「検索文字列」には「検索したい文字列」が入ります。

 

2-2.例で確認

実際に数式を使ってみた例を見てみましょう。

例の場合、数式は次のようになります。

=RIGHT(A1,LEN(A1)-FIND("●",SUBSTITUTE(A1,"-","●",LEN(A1)-LEN(SUBSTITUTE(A1,"-","")))))

 

「対象」がA1、「検索文字列」が「"-"」です。

 

これで、最後の「-」以降の文字列「dddd」が取り出せています。

3.数式利用時の注意点

紹介した数式には、一つ注意点があります。

 

それは、「『対象』の文字列の中に『●』がないこと」です。

 

実は、「●」は「●」でなければならない理由はありません。

 

「対象」の中にない文字や記号であれば、なんでもいいのです。

 

ただし、「対象の中にない」ことだけは守らないと正しく動きません。

 

もし、対象の中に「●」がある場合には、紹介した数式の「●」部分を別の記号などに置き換えてください。

4.数式の意味を確認

最後に、数式の意味を確認します。

 

複数の関数を使い、全体的にちょっと独特なので、なんでこの数式の形になっているのか、分かりづらいと思います。

 

例において、数式は次の通りでした。

=RIGHT(A1, FIND("●", SUBSTITUTE(A1, "-", "●", LEN(A1) - LEN(SUBSTITUTE(A1, "-", "")))))

この数式の、特に「FIND関数」部分を、エクセルの計算順序に合わせて見ていきます。

 

(1)「SUBSTITUTE(A1, "-", "")」の部分

この部分は、「検索文字列を空白に変換する」ことをしています。

 

つまり、この部分の計算結果は、「aaabbbcccddd」となります。

 

(2)「LEN(SUMSTITUTE())」の部分

この部分は、「『aaabbbccc』の文字数を数える」ことをしています。

 

つまり、この部分の計算結果は「12」です。

 

(3)「LEN(A1)-LEN(SUMSTITUTE())」の部分

ここでは、「『-』を空白にしない状態と空白にした状態の文字数の差」を求めています。

 

つまり、「-」の数を求めており、この部分の計算結果は「3」です。

 

(4)「SUBSTITUTE(~,LEN(A1)-LEN(SUMSTITUTE()))」の部分

この部分は、「3つ目の『-』を『●』に置き換える」ことをしています。

 

ここで出てくる「3」は、先ほど求めた「-」の数です。

 

つまり、ここの計算結果は「aaa-bbb-ccc●ddd」となります。

 

(5)全部

ここでは、「●の位置」を求めています。

 

つまり、計算結果は「12」です。

 

これで、一番最後の「-」の位置が出ました。

 

後は、RIGHT関数で右側からこの位置まで文字列を取り出しています。

 

以上、参考になれば幸いです。

 


口コミ・評判のいいExcel本の紹介】


FIND関数に関連したページは、次の通りです。。

  • FIND関数 使いこなすためのポイントはこちら
Top