KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

テキスト文字列から最初と2 番目のカンマの間にあるテキストの抽出

著者Xiaoyang変更日

このチュートリアルでは、テキスト文字列から最初と2 番目のカンマの間、または2 番目と3 番目のカンマの間にあるテキストを抽出するためのExcel 数式をいくつかご紹介します。

doc-extract-text-between-two-commas-1


テキスト文字列から最初と2 番目のカンマ(または他の区切り文字)の間にあるテキストの抽出

最初のカンマ(または他の区切り文字)と2 番目のカンマの間に含まれるテキストを抽出したい場合は、MID 関数と SEARCH 関数を組み合わせることで実現できます。一般的な構文は次のとおりです:

=MID()cell, SEARCH(")char",cell) + 1, SEARCH("char",cell, SEARCH(")char",cell)+1) - SEARCH("char",cell) - 1)
  • cell:テキストを抽出する対象となるセル参照またはテキスト文字列。
  • char:テキストを抽出する際の区切り文字として使用する特定の文字。

結果を表示したい空白セルに、次の数式をコピーまたは入力してください:

=MID(A2, SEARCH(",",A2) + 1, SEARCH(",",A2,SEARCH(",",A2)+1) - SEARCH(",",A2) - 1)

次に、この数式を適用したいセルまでフィルハンドルを下にドラッグすると、最初と2 番目のカンマの間に含まれるすべてのテキストが抽出されます(下記スクリーンショット参照)。

doc-extract-text-between-two-commas-2


数式の説明:

1.SEARCH(",",A2) + 1:この SEARCH 関数は、セル A2 内にある最初のカンマの位置を特定し、その値に1 を加えることで、次の文字から抽出を開始します。結果として得られる数値「14」は、MID 関数の start_num 引数として使用されます。

2.SEARCH(",",A2,SEARCH(",",A2)+1) - SEARCH(",",A2) – 1:この部分は、MID 関数の num_chars 引数として使用されます。

  • SEARCH(",",A2,SEARCH(",",A2)+1):この数式の部分は、2 番目のカンマの位置を特定するために使用され、数値21 を返します。
  • SEARCH(",", A2):この SEARCH 関数は、セル A2 内にある最初のカンマの位置を返します。結果は数値13 になります。
  • SEARCH(",", A2, SEARCH(",", A2)+1) - SEARCH(",", A2)-1=21-13-1:2 番目のカンマの位置から最初のカンマの位置を引いたうえで、さらに1 を引くことでカンマ自体を除外します。その結果、7 が得られます。

3.MID(A2, SEARCH(",",A2) + 1, SEARCH(",",A2,SEARCH(",",A2)+1) - SEARCH(",",A2) - 1)=MID(A2, 14, 7): 最後に、MID 関数でセル A2 の14 文字目から7 文字を抽出します。


注意点:

1.テキスト文字列が他の区切り文字で区切られている場合は、数式内のカンマをその区切り文字に変更するだけで済みます。

2.ここでは、この作業を支援するもう一つのシンプルな数式を紹介します:

=TRIM(MID(SUBSTITUTE(A2,",",REPT(「 」,100)),100,100))

doc-extract-text-between-two-commas-3


テキスト文字列から2 番目と3 番目のカンマ(または他の区切り文字)の間にあるテキストの抽出

場合によっては、2 番目と3 番目のカンマの間に挟まれたテキストを抽出する必要があるかもしれません。そのような場合は、MID 関数、FIND 関数、および SUBSTITUTE 関数を組み合わせて対応できます。一般的な構文は次のとおりです:

=MID()cell, FIND(「#」,SUBSTITUTE())cell,"char","#「,2))+1, FIND(」#",SUBSTITUTE(cell,"char","#",3)) - FIND("#",SUBSTITUTE(cell,"char","#",2))-1)
  • cell:テキストの抽出対象とするセル参照またはテキスト文字列。
  • char:テキストの抽出基準とする特定の区切り文字。

空白セルに以下の数式をコピーまたは入力してください:

=MID(A2, FIND(「#」,SUBSTITUTE(A2,",",「#」,2))+1, FIND(「#」,SUBSTITUTE(A2,",",「#」,3)) - FIND(「#」,SUBSTITUTE(A2,",",「#」,2))-1)

数式を貼り付けた後、この数式を適用したいセルまでフィルハンドルを下にドラッグすると、2 番目と3 番目のカンマの間にあるすべてのテキストが以下のスクリーンショットのように抽出されます:

doc-extract-text-between-two-commas-4


数式の説明:

1.FIND(「#」,SUBSTITUTE(A2,",",「#」,2))+1:この式は、MID 関数の start_num 引数として使用されます。

  • SUBSTITUTE(A2,",",「#」,2):この SUBSTITUTE 関数は、セル A2 内の2 番目のカンマを「#」に置き換えます。結果は次のとおりです:「Apple-3000KG,Houston#Texas,US」。
  • FIND(「#」,SUBSTITUTE(A2,",",「#」,2))+1:FIND 関数で、SUBSTITUTE 関数が返したテキスト内の「#」の位置を特定し、さらに1 を加えることで、次の文字から抽出を開始します。これにより、数値22 が得られます。

2.FIND(「#」,SUBSTITUTE(A2,",",「#」,3)) - FIND(「#」,SUBSTITUTE(A2,",",「#」,2))-1:この部分は、MID 関数の num_chars 引数として使用されます。

  • FIND(「#」,SUBSTITUTE(A2,",",「#」,3)):この数式は3 番目のカンマの位置を特定し、数値27 を返します。
  • FIND(「#」,SUBSTITUTE(A2,",",「#」,3)) - FIND(「#」,SUBSTITUTE(A2,",",「#」,2))-1= 27-21-1:3 番目のカンマの位置から2 番目のカンマの位置を引いて、さらに1 を引くことで、カンマ自体をカウントから除外します。その結果、5 が得られます。

3.MID(A2, FIND(「#」,SUBSTITUTE(A2,",",「#」,2))+1, FIND(「#」,SUBSTITUTE(A2,",",「#」,3)) - FIND(「#」,SUBSTITUTE(A2,",",「#」,2))-1) = MID(A2, 22, 5):最後に、MID 関数でセル A2 の22 文字目から5 文字を抽出します。


注意点:

1.テキスト文字列が他の区切り文字で区切られている場合は、数式内のカンマをその区切り文字に変更するだけで対応できます。

2.2 番目と3 番目のカンマの間にあるテキストを抽出するのに役立つもう一つのシンプルな数式も紹介します:

=TRIM(MID(SUBSTITUTE(A2,",",REPT(「 」,100)),200,100))

doc-extract-text-between-two-commas-5


関連する関数:

  • MID:
  • MID 関数は、指定されたテキスト文字列の中央から特定の文字数を抽出して返す際に使用されます。
  • FIND:
  • FIND 関数は、指定した文字列を別の文字列内から検索し、その位置(先頭からの文字数)を返すために使用されます。
  • SEARCH:
  • SEARCH 関数は、指定されたテキスト文字列内で特定の文字や部分文字列の位置を検索するのに役立ちます。
  • SUBSTITUTE:
  • Excel の SUBSTITUTE 関数は、テキスト文字列内の指定した文字や語句を、別の文字や語句に置き換えます。

関連記事:

  • セルから複数行を抽出する
  • 改行(テキスト入力時に Alt キーと Enter キーを押して挿入される)で区切られたテキスト文字列を、以下のスクリーンショットのように複数のセルに分割したい場合、Excel ではどのような数式を使えばこの課題を解決できますか?
  • Excel でテキスト文字列から N 番目の単語を抽出する
  • テキスト文字列や文章のリストがあり、以下のスクリーンショットのようにリストから特定の N 番目の単語を抽出したい場合、この記事ではExcel でその作業を効率的に解決するためのいくつかの方法をご紹介します。
  • 特定の文字の最後の出現位置以降の文字列を抽出するテキストの抽出
  • セルデータ内にハイフン、カンマ、スペースなど複数の区切り文字を含む複雑なテキスト文字列のリストがある場合、ハイフンの最後の出現位置を特定し、その後の部分文字列を抽出したいことがあります。この記事では、そのようなタスクを実現するための便利な数式をいくつかご紹介します。

最高の Office 生産性ツール

Kutools for Excel - あなたを群衆の中から際立たせます

🤖KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気機能検索・ハイライト・重複をマーキング    空白行を削除する    データを失うことなく列の結合またはセルを    数式を使用しない四捨五入...
スーパー VLookup複数条件    複数値    複数シート間    ファジーマッチ...
高度なドロップダウンリスト簡単なドロップダウンリスト    連動型ドロップダウンリスト    複数選択可能なドロップダウンリスト...
列マネージャー指定した数の列を追加    列の移動   非表示列の表示状態を切り替え  列を比較して同じ/異なるセルを選択...
注目の機能グリッドフォーカス    デザインビュー    強化された数式バー    ワークブックとシートマネージャーリソースライブラリ(オートテキスト)  日付ピッカー    ワークシートの統合    暗号化/セルの復号化   リストからメール送信    スーパーフィルター    特殊フィルタ(太字のフォントを持つセルをフィルタリング/イタリック/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除...)  50+チャートタイプガントチャート...)  40+実用的な数式誕生日に基づいて年齢を計算します...)  19 挿入ツールQR コードを挿入パスから画像を挿入...)  12 変換ツール単語に変換する為替レートの変換...)  7 結合と分割ツール高度な行のマージExcel セルを分割...)。。。他にも多数
Kutools を好みの言語でお使いいただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+言語以上をサポートしています!

Kutools for Excel は300 以上の機能を備えており、必要な機能が常にワンクリックで利用できます…


Office Tab - Microsoft Office(Excel を含む)でタブを使った閲覧・編集を可能にします

  • 数十もの開いているドキュメントを1 秒で切り替えられます!
  • 毎日何百回ものマウスクリックを削減して、マウス手の悩みともさよならしましょう。
  • 複数のドキュメントを閲覧・編集する際の生産性が50%も向上します。
  • Office(Excel を含む)に、Chrome、Edge、Firefox のような効率的なタブ機能をもたらします。