TEXTBEFORE関数

Excel 365, Excel 2021+

概要

TEXTBEFORE関数は、指定した区切り文字の前に出現するテキストを抽出します。TEXTAFTER関数の反対機能を持ち、文字列の前半部分を簡単に取得できます。メールアドレスやURL、パス名から特定の部分を分離するのに最適です。

構文

=TEXTBEFORE(text, delimiter, [instance_num], [match_mode], [match_end], [if_not_found])

パラメータ

パラメータ タイプ 必須 説明
text Text はい 検索対象のテキスト。空文字列の場合は空テキストを返す。
delimiter Text はい 抽出前の位置をマークする区切り文字。
instance_num Number いいえ 区切り文字のインスタンス番号。負数で末尾から検索。
match_mode Number いいえ 0=大文字小文字区別、1=区別しない。
match_end Number いいえ 0=末尾不一致、1=末尾一致。
if_not_found Any いいえ 一致なし時の戻り値。

TEXTBEFORE関数の使用

TEXTBEFOREは文字列処理を大幅に簡素化します。複雑なLEFT+SEARCH+FINDの組み合わせを1つの関数で代替。データクレンジング、ログ解析、CSV処理などで特に有効です。

TEXTBEFOREの一般的な例

基本的な区切り文字抽出

=TEXTBEFORE("赤ずきんちゃんの赤いフード","赤い")

「赤ずきんちゃんの」を返します。

複数インスタンス指定

=TEXTBEFORE("[email protected]","@")

「email」を返します。メールアドレスのユーザー部分取得。

後方からの検索

=TEXTBEFORE("ファイルパス/ドキュメント.txt","/",-1)

「ファイルパス」を返します。最後のスラッシュ手前。

大文字小文字無視

=TEXTBEFORE("Product-Code-123","code",1,1)

「Product-」を返します(小文字区別なし)。

見つからない場合のカスタム値

=TEXTBEFORE(A1,"@","見つかりません")

区切り文字がない場合は「見つかりません」を返す。

よくある質問

LEFTは文字数指定、TEXTBEFOREは区切り文字指定。位置が不明な場合にTEXTBEFOREが優位。

テキスト末尾から検索開始。-1は最後の一致、-2は最後から2番目。

前方検索時は空文字列、後方検索時は全文を返す。

一般的なエラーと解決策

#VALUE! エラー

Cause: instance_num=0、または数値範囲外

Solution: 有効なインスタンス番号(1以上または-1以下)を指定

#N/A エラー

Cause: 区切り文字が見つからない

Solution: if_not_found引数で代替値を指定、または区切り文字確認

注記

  • Excel 365、Excel 2021以降で利用可能
  • TEXTAFTER関数とセットで使用すると強力
  • TEXTSPLITとの連携で高度な文字列分割が可能
  • 日本語文字列でも正常動作

互換性

利用可能: Excel 365, Excel 2021, Microsoft 365

利用不可: Excel 2019以前, Excel 2016以前

コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 365, Excel 2021+