【Excel】特定の文字より前/後ろを抽出する!TEXTBEFORE/AFTER関数

エクセルで「特定の文字より前(または後ろ)」を抽出できる、TEXTBEFORE/AFTER関数の使い方をご紹介します。これらの関数が使えない場合に、「REPLACE関数」で代用する方法も解説しているので、ぜひ参考にしてみてください。

スポンサーリンク

TEXTBEFORE/AFTER関数を使う(Microsoft 365)

特定の文字より前を抽出する(TEXTBEFORE)

【Excel】特定の文字より前/後ろを抽出する!TEXTBEFORE/AFTER関数

「テキスト」から、指定した「区切り文字(例:@)」より前の部分を返します。

例:=TEXTBEFORE(A2,"@")

💡 ポイント:区切り文字はダブルクォーテーション("")で囲みます。

TEXTBEFORE関数の引数:(テキスト, 区切り文字, [区切り位置], [一致モード], [末尾一致], [見つからない場合])

特定の文字より後ろを抽出する(TEXTAFTER)

【Excel】特定の文字より前/後ろを抽出する!TEXTBEFORE/AFTER関数

「テキスト」から、指定した「区切り文字(例:@)」より後ろの部分を返します。

例:=TEXTAFTER(A2,"@")

💡 ポイント:区切り文字はダブルクォーテーション("")で囲みます。

TEXTAFTER関数の引数:(テキスト, 区切り文字, [区切り位置], [一致モード], [末尾一致], [見つからない場合])


📖 その他の引数:

全部で6つの引数がありますが、基本的には最初の2つだけで動きます。

  1. テキスト:検索対象の文字列です。
  2. 区切り文字:どの文字より前(または後ろ)を抽出するかを指定します。
  3. [区切り位置]:区切り文字が複数ある場合、何番目の文字を基準にするか指定します。
  4. [一致モード]:大文字と小文字を区別するかを指定します。
    • 0(省略時):厳密に区別する
    • 1:区別せず、同じ文字として扱う
  5. [末尾一致]:区切り文字が見つからないとき、テキストの終わりを「区切り文字」とみなすかどうかを指定します。
    • 0(省略時):見つからなければエラーにする
    • 1区切り記号をテキストの末尾に一致させる
  6. [見つからない場合]:区切り文字が見つからない場合に、エラーの代わりに表示する値を指定します。(例:""
スポンサーリンク

REPLACE関数を使う(2021以前)

特定の文字より前を抽出する

【Excel】特定の文字より前/後ろを抽出する!TEXTBEFORE/AFTER関数

開始位置(1文字目)から、特定の文字(@)の位置までを「空白」に置き換えることで、それ以降の文字を残します

例:=REPLACE(A2, 1, SEARCH("@", A2), "")

REPLACE関数の引数:(文字列, 開始位置, 文字数, 置換文字列)

SEARCH関数の引数:(検索文字列,対象,[開始位置])


【数式の解説】

  1. SEARCH関数:@」の位置(6文字目)を数字で取得します。
  2. REPLACE関数:開始位置(1文字目)から、6文字を空白("")に置換します。

特定の文字より後ろを抽出する

【Excel】特定の文字より前/後ろを抽出する!TEXTBEFORE/AFTER関数

特定の文字(@)から後ろの文字を「空白」に置き換えて、それより前の文字を残します。

例:=REPLACE(A2, SEARCH("@", A2), 100, "")

💡 ポイント:第3引数の「100」には、削除したい文字数より大きい適当な数字を指定します。


【数式の解説】

  1. SEARCH関数:@」の位置(6文字目)を数字で取得します。
  2. REPLACE関数:開始位置(6文字目)から、100文字を空白("")に置換します。
スポンサーリンク

関連記事

タイトルとURLをコピーしました