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

テキスト文字列から2 番目または n 番目のスペース以降または以前のテキストを削除する

著者Xiaoyang変更日

下記スクリーンショットのように、2 番目または n 番目の特定の区切り文字(スペース、カンマなど)以降、または以前のテキストをすべて削除したい場合があります。本記事では、Excel でこのタスクを簡単に処理できる数式をいくつかご紹介します。

doc-remove-after-second-space-1


テキスト文字列から2 番目または n 番目の特定の区切り文字(スペース、カンマなど)以降のテキストを削除する

Excel では、2 番目または n 番目のスペース(または他の区切り文字)以降のテキストを削除する際に、LEFT 関数、SUBSTITUTE 関数、および FIND 関数を組み合わせて使用できます。一般的な構文は次のとおりです。

=LEFT(SUBSTITUTE(cell,「 」,「#」,N+1),FIND(「#」,SUBSTITUTE(cell,「 」,「#」,N),1)-1)
  • cell:テキストを削除したいセルの参照、またはテキスト文字列です。
  • N:テキストを削除する際の基準となる、n 番目の区切り文字を示します。

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

=LEFT(SUBSTITUTE(A2,「 」,「#」,3),FIND(「#」,SUBSTITUTE(A2,「 」,「#」,2),1)-1)

次に、フィルハンドルを下方向にドラッグしてこの数式を適用したいセルまで範囲指定すると、2 番目のスペース以降のすべてのテキストが一括で削除されます(下記スクリーンショット参照)。

doc-remove-after-second-space-2

数式の説明:

1.SUBSTITUTE(A2,「 」,「#」,3):この SUBSTITUTE 関数は、セル A2 内の3 番目のスペースを指定された文字「#」に置き換えます。その結果、「Tom Hill Houston#Texas US」となり、この文字列が LEFT 関数の text 引数として使用されます。

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

  • SUBSTITUTE(A2,「 」,「#」,2):SUBSTITUTE 関数を使って、セル A2 内の2 番目のスペースを指定された「#」文字に置き換えます。結果は次のとおりです。「Tom Hill#Houston Texas US」。
  • FIND(「#」,SUBSTITUTE(A2,「 」,「#」,2),1)-1=FIND(「#」, 「Tom Hill#Houston Texas US」, [[PH_26]])-1:この FIND 関数は、SUBSTITUTE 関数が返したテキスト文字列の先頭から「#」の位置を検索します。その後、1 を引くことでスペースを除外し、結果として数値8 が得られます。

3.LEFT(SUBSTITUTE(A2,「 」,「#」,3),FIND(「#」,SUBSTITUTE(A2,「 」,「#」,2),1)-1)=LEFT(「Tom Hill Houston#Texas US」, [[PH_32]]): 最後に、この LEFT 関数はセル A2 のテキスト文字列の先頭から8 文字を抽出します。

注記:

1.テキスト文字列を区切る他の区切り文字がある場合は、スペース文字を必要な区切り文字に置き換えるだけです。

2.n 番目の特定の区切り文字以降のテキストを削除するには、n の値を目的の数に変更してください。たとえば、3 番目のスペース以降のテキストを削除したい場合は、次の数式をご利用ください。

=LEFT(SUBSTITUTE(A2,「 」,「#」,4),FIND(「#」,SUBSTITUTE(A2,「 」,「#」,3),1)-1)

doc-remove-after-second-space-3


テキスト文字列から2 番目または n 番目の特定の区切り文字(スペース、カンマなど)以前のテキストを削除する

2 番目または n 番目の特定の区切り文字より前のテキストを削除するには、RIGHT 関数、LEN 関数、FIND 関数、および SUBSTITUTE 関数が役立ちます。一般的な構文は次のとおりです。

=RIGHT(cell,LEN(cell)-FIND(「#」,SUBSTITUTE(cell,「 」,「#」,N)))
  • cell:テキストを削除したいセル参照またはテキスト文字列です。
  • N:テキスト削除の基準となる n 番目の区切り文字を表します。

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

=RIGHT(A2,LEN(A2)-FIND(「#」,SUBSTITUTE(A2,「 」,「#」,2)))

次に、フィルハンドルを下方向にドラッグしてこの数式を目的のセルに適用すれば、必要な結果が得られます。

doc-remove-after-second-space-4

数式の説明:

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

  • SUBSTITUTE(A2,「 」,「#」,2):SUBSTITUTE 関数を使って、セル A2 内の2 番目のスペースを指定された「#」文字に置き換えます。結果は次のとおりです。「Tom Hill#Houston Texas US」。
  • FIND(「#」,SUBSTITUTE(A2,「 」,「#」,2))=FIND(「#」, 「Tom Hill#Houston Texas US」 ):この FIND 関数は、SUBSTITUTE 関数が返したテキスト文字列内にある「#」の位置を特定します。その結果、数値9 が得られます。
  • LEN(A2)-FIND(「#」,SUBSTITUTE(A2,「 」,「#」,2))=25-9:セル A2 の文字列全体の長さから、2 番目のスペースの位置を引くことで、その後ろに続く文字数を取得します。これにより、結果として16 という数値が得られます。

2.RIGHT(A2,LEN(A2)-FIND(「#」,SUBSTITUTE(A2,「 」,「#」,2)))=RIGHT(A2, 16):この RIGHT 関数は、セル A2 内のテキストの末尾から指定された文字数を抽出する際に使われます。

注記:

1.テキスト文字列を区切る他の区切り文字がある場合は、スペース文字を目的の文字に置き換えるだけです。

2.n 番目の特定の区切り文字より前のテキストを削除するには、n の値を目的の数値に変更してください。たとえば、3 番目のスペースより前のテキストを削除するには、以下の数式を適用します。

=RIGHT(A2,LEN(A2)-FIND(「#」,SUBSTITUTE(A2,「 」,「#」,3)))

doc-remove-after-second-space-5


使用された関連関数:

  • LEN
  • LEN 関数は、テキスト文字列に含まれる文字数を返します。
  • LEFT
  • LEFT 関数は、指定した文字列の先頭(左端)から、指定した文字数だけ抽出します。
  • RIGHT
  • RIGHT 関数は、テキスト文字列の右端から指定した文字数を抽出する際にご使用いただけます。
  • FIND
  • FIND 関数は、指定した文字列を別の文字列内から検索し、その開始位置を返すために使用されます。
  • SUBSTITUTE
  • Excel の SUBSTITUTE 関数は、テキスト文字列内の指定した文字や語句を、別の文字や語句に置き換えます。

関連記事:

  • テキスト文字列から括弧または角括弧内のテキストを削除する
  • テキスト文字列のリストの中に、一部が括弧で囲まれているものがあるとします。このようなとき、下記のスクリーンショットのように、括弧ごとその中身すべてを削除したい場合があります。本記事では、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 のような効率的なタブ機能をもたらします。