特定の文字の最後の出現以降
セルデータ内にハイフン、コンマ、スペースなど複数の区切り文字が混在する(下記スクリーンショット参照)複雑なテキスト文字列のリストにおいて、ハイフンの最後の出現位置を特定し、その後の部分文字列を抽出したい場合があります。本記事では、このタスクを効率的に処理するための数式をいくつかご紹介します。

数式 1:特定の区切り文字の最後の出現以降の部分文字列を抽出する
Excel では、RIGHT 関数に LEN 関数、SEARCH 関数、SUBSTITUTE 関数を組み合わせることで、この作業を解決する数式を作成できます。
1。ハイフン文字の最後に出現する位置以降の部分文字列を抽出するには、空白セルに次の数式を入力またはコピーしてください:
2。次に、この数式を適用したいセルまでフィルハンドルを下にドラッグすると、以下のスクリーンショットのように結果が表示されます:

数式の説明:
1。 LEN(A2)-LEN(SUBSTITUTE(A2,"-",「」)):この式は、セル A2 に含まれるハイフンの個数を取得するために使用されます。
- LEN(A2):この LEN 関数は、セル A2 内の文字数を返します。結果は次のとおりです:44。
- SUBSTITUTE(A2,"-",「」):この SUBSTITUTE 関数は、すべてのハイフンを空文字に置き換えます。次のような結果が得られます:「InsertDeleterows, sheets, images, formulas」。
- LEN(SUBSTITUTE(A2,"-",「」)):セル A2 からハイフンを除いた文字列の全長を取得します。
- LEN(A2)-LEN(SUBSTITUTE(A2,"-",「」)):ハイフンを含まない文字列の長さを、元の文字列の長さから引くことで、ハイフンの個数を算出します。結果は2 になります。
2。 SUBSTITUTE(A2,"-",「#」,LEN(A2)-LEN(SUBSTITUTE(A2,"-",「」))):この SUBSTITUTE 関数は、最初の数式で求められたハイフンの最後の出現位置を「#」に置き換えます。結果は次のようになります:「Insert-Delete#rows, sheets, images, formulas」。

3。 SEARCH(「#」,SUBSTITUTE(A2,"-",「#」,LEN(A2)-LEN(SUBSTITUTE(A2,"-",「」))))=SEARCH(「#」, 「Insert-Delete#rows, sheets, images, formulas」):この SEARCH 関数は、SUBSTITUTE 関数によって返されたテキスト文字列内にある「#」の位置を特定し、その結果は14 になります。
4。 LEN(A2)-SEARCH(「#」,SUBSTITUTE(A2,"-",「#」,LEN(A2)-LEN(SUBSTITUTE(A2,"-",「」)))):この数式の部分は、最後のハイフン以降の文字数を取得します。結果は30 になります。
5。 RIGHT(A2,LEN(A2)-SEARCH(「#」,SUBSTITUTE(A2,"-",「#」,LEN(A2)-LEN(SUBSTITUTE(A2,"-",「」)))))=RIGHT(A2, 30):最後に、RIGHT 関数を使って、セル A2 のテキスト文字列の右端からステップ4 の数式で返された30 文字を抽出します。
注記:
1。他の区切り文字の最後の出現以降のテキストを抽出したい場合は、ハイフンを目的の区切り文字に変更するだけで簡単に実現できます。
2。テキスト文字列内に該当する区切り文字が存在しない場合、上記の数式はエラー値を返します(スクリーンショット参照)。

このエラーを修正するには、上記の数式を IFERROR 関数で囲んでください。次の数式を適用します:

数式 2:特定の区切り文字の最後の出現以降の部分文字列を抽出する
ここでは、TRIM 関数、RIGHT 関数、SUBSTITUTE 関数、REPT 関数、LEN 関数を組み合わせたシンプルな数式も、Excel でこのタスクを解決するのに役立ちます。
1。結果を表示したい空白セルに、次の数式をコピーまたは入力してください:
2。次に、この数式を適用したいセルまでフィルハンドルを下にドラッグすると、以下のスクリーンショットのように、最後のハイフン以降の部分文字列がすべて抽出されます:

数式の説明:
1。 LEN(A2):この LEN 関数は、セル A2 内の文字数を返します。この値は RIGHT 関数の num_chars 引数として使用されます。結果は次のとおりです:44。
2。 SUBSTITUTE(A2,"-",REPT(「 」,LEN(A2))):
- REPT(「 」,LEN(A2)):この REPT 関数は、セル A2 の文字列の長さに基づいて、対応する数のスペースを生成します。
- SUBSTITUTE(A2,"-",REPT(「 」,LEN(A2))):この SUBSTITUTE 関数は、セル A2 内のハイフンを、REPT 関数が生成したスペース文字列に置き換えます。
この部分の数式は、RIGHT 関数の text 引数として認識されます。
3。 RIGHT(SUBSTITUTE(A2,"-",REPT(「 」,LEN(A2))),LEN(A2)):この RIGHT 関数は、SUBSTITUTE 関数が返したテキスト文字列の右端から指定された文字数分を抽出します。
4。 TRIM():この TRIM 関数は、余分なスペースをすべて削除し、単語間にはスペースを1 つだけ残すために使われます。
使用された関連関数:
- RIGHT:
- RIGHT 関数は、テキスト文字列の右端から指定した文字数分を抽出します。
- SEARCH:
- SEARCH 関数は、指定されたテキスト内で特定の文字や部分文字列がどこにあるかを検索するのに役立ちます。
- LEN:
- LEN 関数は、テキスト文字列に含まれる文字数を返します。
- SUBSTITUTE:
- Microsoft Excel の SUBSTITUTE 関数は、テキスト文字列内の指定した文字やテキストを、別の文字やテキストに置き換えます。
- TRIM:
- TRIM 関数は、テキスト文字列から不要なスペースをすべて取り除き、単語間にはスペースを1 つだけ残します。
- REPT:
- REPT 関数は、指定した回数だけ文字を繰り返す際にご活用いただけます。
関連記事:
- セルから複数行を抽出する
- 改行(Alt キーと Enter キーを押して挿入される)で区切られたテキスト文字列を、以下スクリーンショットのように複数のセルに分割したい場合、Excel で数式を使ってこの課題をどのように解決できますか?
- Excel でテキスト文字列から N 番目の単語を抽出する
- テキスト文字列や文章のリストから、特定の N 番目の単語を以下スクリーンショットのように抽出したい場合があります。本記事では、Excel でこの作業を効率的に解決するためのいくつかの方法をご紹介します。
- テキストの抽出テキスト文字列内の括弧間から抽出する
- テキスト文字列内に括弧で囲まれた部分がある場合、以下スクリーンショットのように括弧内のすべてのテキストを抽出したいのですが、この作業をExcel で迅速かつ簡単に処理するにはどうすればよいでしょうか?
- Excel でテキスト文字列から部分文字列を抽出する
- テキスト文字列から部分文字列を抽出するのは一般的な作業ですが、Excel にはそのための専用関数は用意されていません。しかし、LEFT 関数、RIGHT 関数、MID 関数、SEARCH 関数を組み合わせることで、必要な部分文字列を自在に取り出すことができます。
最高の Office 生産性ツール
Kutools for Excel - あなたを群衆の中から際立たせます
| 🤖 | KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気機能:検索・ハイライト・重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー VLookup:複数条件 | 複数値 | 複数シート間 | ファジーマッチ... | |
| 高度なドロップダウンリスト:簡単なドロップダウンリスト | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト... | |
| 列マネージャー:指定した数の列を追加 | 列の移動 | 非表示列の表示状態を切り替え |列を比較して同じ/異なるセルを選択... | |
| 注目の機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブックとシートマネージャー|リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/イタリック/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除...)| 50+チャートタイプ(ガントチャート...)| 40+実用的な数式(誕生日に基づいて年齢を計算します...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入...)| 12 変換ツール(単語に変換する、為替レートの変換...)| 7 結合と分割ツール(高度な行のマージ、Excel セルを分割...)|。。。他にも多数 |
Kutools for Excel は300 以上の機能を備えており、必要な機能が常にワンクリックで利用できます…
Office Tab - Microsoft Office(Excel を含む)でタブを使った閲覧・編集を可能にします
- 数十もの開いているドキュメントを1 秒で切り替えられます!
- 毎日何百回ものマウスクリックを削減して、マウス手の悩みともさよならしましょう。
- 複数のドキュメントを閲覧・編集する際の生産性が50%も向上します。
- Office(Excel を含む)に、Chrome、Edge、Firefox のような効率的なタブ機能をもたらします。