【Excel】 特定の文字列より前/より後を取り出す

この記事は約2分で読めます。

エクセルで特定の文字の前までを取り出す、特定の文字以降を取り出す方法です。
“_”とか”/”とか。決まったルールでつながっているものってありますよね。クリエイティブのコードやキャンペーン名-グループ名、等です。郵便番号でも使えます。

特定の文字列よりも前を取り出す

やりたいこと

エクセルでこんな感じのセルが並んでいるときに、名前だけ取り出したい!

吉田沙保里【35】
大塚愛【35】
吹石一恵【35】
中田敦彦【35】

↓この文章なら【35】を空白に置換でもいいのですが・・

吉田沙保里
大塚愛
吹石一恵
中田敦彦

数式(コピペ可)

上記例の場合、”【”より前を抜き出せばいいわけです。
A2セルに、探したい文字”【”がある場合

=LEFT(A1,FIND(“【”,A1)-1)

Left関数:left(参照するセル,番号)
先頭から指定した番号まで取り出せる関数

Find関数:find(“探したい文字列”,参照するセル)
参照するセルの中に、指定した文字が【左から何番目にあるか】を探す関数

特定の文字列よりも前を取り出す

やりたいこと

エクセルでこんな感じのセルが並んでいるときに、年齢だけ取り出したい!

吉田沙保里【35】
大塚愛【35】
吹石一恵【35】
中田敦彦【35】

↓この文章なら【35】だけ書き出してもよいのですが・・

【35】
【35】
【35】
【35】

数式(コピペ可)

上記例の場合、”【”より後ろを抜き出せばいいわけです。
A2セルに、探したい文字”【”がある場合

=RIGHT(A2,LEN(A2)-(FIND(“【”,A2)-1))

Right関数:Right(参照するセル,番号)
末尾から指定した番号まで取り出せる関数
Left関数の逆バージョンです。

“【”が後ろから何番目にあるかを判断するために、Find関数とlen関数を組み合わせます。

Len関数:len(参照するセル)
参照するセルの文字列の長さを、半角・全角共に1として数える関数
文字数とスペースの数を数えているのと実質的に同じです。

len(指定したセル)-(find(“探したい文字列”,参照するセル)-1)
 find(“探したい文字列”,参照するセル):指定した文字が左から何個目にあるか
 len(指定したセル)-(find(“探したい文字列”,参照するセル)-1):指定した文字が右から何個目にあるか

指定した文字列=〇〇〇●〇〇 のとき、
len(指定したセル)=6
find(“探したい文字列”,参照するセル)=4
なので、
6-(4-1)=6-3=3
となる、そんな感じです。