本記事では、TEXTBEFORE、TEXTAFTER関数を使ってカッコ内の文字列を抽出する方法を紹介します。
本方法では、特定の文字に囲まれた文字列の抽出も可能です。
TEXTBEFORE、TEXTAFTER関数を使ってカッコ内の文字列を抽出する方法
「B2」セル内の「(」、「)」に囲まれた文字列を抽出するためには、以下の関数で取得が可能です。
=TEXTBEFORE(TEXTAFTER(B2,"("),")")

以下の画像の通り、カッコの種類を変えた「【」、「】」に囲まれた文字列や、特定の文字「い」、「け」に囲まれた文字列も抽出可能です。
=TEXTBEFORE(TEXTAFTER(B2,"【"),"】")
=TEXTBEFORE(TEXTAFTER(B3,"い"),"け")

注意点
以下画像のNo7、No8のように2重以上のカッコや、元データのカッコに規則性がないと、意図した値を取得できない場合があります。

TEXTBEFOR関数、TEXTAFTER関数について
今回の記事で紹介したTEXTBEFORE関数、TEXTAFTER関数について、簡単に解説します。

以下の関数を元に解説します。
=TEXTBEFORE(TEXTAFTER(B2,"("),")")
まず、以下のようにTEXTAFTER関数で「(」の後の文字列を抽出します。
=TEXTAFTER(B2,"(")
「1(56abc)e567」から「56abc)e567」を抽出しています。
次に、TEXTBEFORE関数で「)」より前の文字列を抽出します。
=TEXTBEFORE(B2,")")
TEXTAFTER関数で抽出した「56abc)e567」から「56abc」を抽出しています。
最後に
FIND関数、MID関数でカッコ内の文字列を抽出する方法を以下記事にしてます。
TEXTBEFORE関数、TEXTAFTER関数という比較的新しい関数だと、よりシンプルな記述でカッコ内の文字列を抽出できることに驚きでした。
auroralights.jp
以上、お読みいただきありがとうございました。