Excelのテキスト文字列からn番目の単語を抽出します
テキスト文字列または文のリストがある場合は、次に示すスクリーンショットのように、リストから特定のn番目の単語を抽出します。 この記事では、Excelでこのジョブを解決するためのいくつかの方法を紹介します。
- 式を使用してテキスト文字列からn番目の単語を抽出して取得します
- ユーザー定義関数を使用して、テキスト文字列からn番目の単語を抽出して取得します
- 強力な機能を備えたテキスト文字列からn番目の単語を抽出して取得します
式を使用してテキスト文字列からn番目の単語を抽出して取得します
このタスクを処理するには、TRIM、MID、SUBSTITUTE、REPT、およびLEN関数を組み合わせた数式を使用できます。 一般的な構文は次のとおりです。
- string:単語を抽出するテキスト文字列またはセル値。
- N:抽出したい単語の番号。
1。 次の数式を空白のセルに入力またはコピーしてください。
注意:上記の式では、 A2 セルには、使用するテキスト文字列が含まれています。 B2 抽出したい単語の番号ですが、番号として入力することもできます。
2。 次に、塗りつぶしハンドルをセルまでドラッグしてこの数式を適用すると、次のスクリーンショットのように特定のn番目の単語がすべて抽出されます。
式の説明:
- 1. SUBSTITUTE(A2、 ""、REPT( ""、LEN(A2))):
- REPT( ""、LEN(A2):このREPT関数は、セルA2のテキスト長である特定の回数だけスペース文字を繰り返すために使用されます。これにより、スペース文字の数が取得されます。
- SUBSTITUTE(A2、 ""、REPT( ""、LEN(A2))):SUBSTITUTE関数は、セルA2の各スペース文字を、REPT関数によって返される多数のスペース文字に置き換えます。これにより、各単語の間に複数のスペースがあるテキスト文字列が取得されます。
- この部分は、MID関数のテキスト引数として再編成されます。
- 2. (B2-1)*LEN(A2)+1: この数式は、セルA2のテキスト文字列からn番目の単語の開始位置を返します。 これは、MID関数のstart_num引数です。
- 3. MID(SUBSTITUTE(A2、 ""、REPT( ""、LEN(A2)))、(B2-1)* LEN(A2)+ 1、LEN(A2)): このMID関数は、上記の数式で返される引数に基づいて、セルA2のテキスト文字列からn番目の単語を抽出します。
- 4. TRIM(): このTRIM関数は、単語間の余分なスペース文字をすべて削除します。
ヒント:単語間に複数のスペース文字がある場合、上記の式は正しく機能しません。この場合、SUBSTITUTE関数内に別のTRIM関数をネストする必要があります。以下の式を適用してください。
ユーザー定義関数を使用して、テキスト文字列からn番目の単語を抽出して取得します
上記の式が少しわかりにくい場合は、ここでユーザー定義関数を紹介します。以下のコードを使用して、テキスト文字列からn番目の単語を抽出することもできます。 次のようにしてください。
1。 プレス Alt + F11 キーを押して アプリケーション向け Microsoft Visual Basic 窓。
2に設定します。 OK をクリックします。 インセット > モジュール、モジュールウィンドウに次のコードをコピーして貼り付けます。
Function FindWord(Source As String, Position As Integer)
'Update by Extendoffice
Dim arr() As String
arr = VBA.Split(Source, " ")
xCount = UBound(arr)
If xCount < 1 Or (Position - 1) > xCount Or Position < 0 Then
FindWord = ""
Else
FindWord = arr(Position - 1)
End If
End Function
3。 次に、コードモジュールを保存して閉じ、次の式を入力します。 = findword(A2、B2) 結果を出力する空白のセルに:
注意:この式では、 A2 セルには、使用するテキスト文字列が含まれています。 B2 抽出したい単語の番号ですが、番号として入力することもできます。
4。 次に、数式を他のセルにドラッグして、必要に応じて結果を取得します。スクリーンショットを参照してください。
強力な機能を備えたテキスト文字列からn番目の単語を抽出して取得します
あなたが持っている場合 Kutools for Excel、ほとんどのExcelユーザーに一般的に使用される複数の数式をサポートしています。 セル内のn番目の単語を抽出します ユーティリティを使用すると、指定したn番目の単語をできるだけ早く抽出できます。 クリックしてKutoolsfor Excelを無料トライアルでダウンロードしてください!
使用される相対関数:
- REPT:
- REPT関数は、指定された回数だけ文字を繰り返すために使用されます。
- SUBSTITUTE:
- SUBSTITUTE関数は、テキスト文字列内のテキストまたは文字を別のテキストまたは文字に置き換えます。
- TRIM:
- TRIM関数は、テキスト文字列から余分なスペースをすべて削除し、単語間のスペースをXNUMXつだけ保持します。
- MID:
- MID関数は、テキスト文字列の途中から特定の文字を返します。
- LEN:
- LEN関数は、テキスト文字列の文字数を返します。
その他の記事:
- Excelのテキスト文字列から最初の単語を取得または抽出する
- スペースで区切られたテキスト文字列のリストから最初の単語をすべて抽出するには、ExcelのLEFTおよびFIND関数を使用すると便利です。
- Excelのテキスト文字列から最後の単語を取得または抽出します
- スペース文字で区切られたテキスト文字列から最後の単語を抽出するには、通常、ExcelのTRIM、SUBSTITUTE、RIGHT、およびREPT関数に基づいて数式を作成できます。
- 複数行のセルからテキストの最後の行を抽出する
- 改行で区切られたテキスト文字列からテキストの最後の行を抽出するには、通常、これを解決する直接的な方法はありません。 この記事では、Excelでこのタスクを処理するための式を紹介します。
最高のオフィス生産性ツール
Kutools forExcel-群衆から目立つのに役立ちます
毎日の仕事を迅速かつ完璧に完了させたいですか? Kutools for Excel は、300 の強力な高度な機能 (ワークブックの結合、色による合計、セルの内容の分割、日付の変換など) を提供し、80% の時間を節約します。
- 1500 の作業シナリオ用に設計されており、80% の Excel の問題を解決するのに役立ちます。
- 毎日何千ものキーボードとマウスのクリックを減らし、疲れた目と手を和らげます。
- 3分でExcelのエキスパートになります。 面倒な数式やVBAコードを覚えておく必要はもうありません。
- 30日間無制限の無料トライアル。 60日間の返金保証。 2年間の無料アップグレードとサポート。

Officeタブ-MicrosoftOffice(Excelを含む)でタブ付きの読み取りと編集を有効にする
- 数十の開いているドキュメントを切り替えるのにXNUMX秒!
- マウスの手に別れを告げて、毎日何百ものマウスクリックを減らしてください。
- 複数のドキュメントを表示および編集する際の生産性が 50% 向上します。
- Chrome、Firefox、新しいInternet Explorerと同じように、効率的なタブをOffice(Excelを含む)にもたらします。
