Note: The other languages of the website are Google-translated. Back to English
English English

從Excel中的文本字符串中提取第n個單詞

現在,如果有文本字符串或句子的列表,則要從列表中提取特定的第n個單詞,如下圖所示。 本文,我將介紹一些在Excel中解決此工作的方法。


使用公式從文本字符串中提取並獲取第n個單詞

要處理此任務,可以使用將TRIM,MID,SUBSTITUTE,REPT和LEN函數組合在一起的公式。 通用語法為:

=TRIM(MID(SUBSTITUTE(string," ",REPT(" ",LEN(string))), (N-1)*LEN(string)+1, LEN(string)))
  • string:要從中提取單詞的文本字符串或單元格值。
  • N:您要提取的單詞的編號。

1。 請輸入以下公式或將其複製到空白單元格中:

=TRIM(MID(SUBSTITUTE(A2," ",REPT(" ",LEN(A2))), (B2-1)*LEN(A2)+1, LEN(A2)))

備註:在以上公式中, A2 是包含您要使用的文本字符串的單元格, B2 是您要提取的單詞的數字,也可以將其輸入為數字。

2。 然後,將填充手柄向下拖動到單元格以應用此公式,並已提取所有特定的第n個單詞,如以下屏幕截圖所示:


公式說明:
  • 1. SUBSTITUTE(A2,“”,REPT(“”,LEN(A2))):
  • REPT(“”,LEN(A2):此REPT函數用於將空格字符重複特定的次數,即單元格A2的文本長度,這將獲得多個空格字符;
  • SUBSTITUTE(A2,“”,REPT(“”,LEN(A2))):SUBSTITUTE函數將用REPT函數返回的很多空格字符替換單元格A2中的每個空格字符,這將獲得一個文本字符串,每個單詞之間具有多個空格。
  • 這部分被重新組織為MID函數中的text參數。
  • 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函數,請應用以下公式:

=TRIM(MID(SUBSTITUTE(TRIM(A2)," ",REPT(" ",LEN(A2))), (B2-1)*LEN(A2)+1, LEN(A2)))


使用用戶定義函數從文本字符串中提取並獲取第n個單詞

如果上面的公式使您難以理解,這裡,我將介紹一個用戶定義函數,使用下面的代碼,您還可以從文本字符串中提取第n個單詞。 請執行以下操作:

1。 按 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

2。 點擊 插入 > 模塊,將以下代碼複製並粘貼到“模塊”窗口中。

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個單詞

如果你有 Excel的Kutools,它支持大多數Excel用戶使用的多個常用公式, 提取單元格中的第n個單詞 實用程序,您可以盡快提取您指定的第n個單詞。 點擊下載Kutools for Excel免費試用!


使用的相對功能:

  • REPT:
  • REPT功能用於將字符重複指定的次數。
  • SUBSTITUTE:
  • SUBSTITUTE函數將文本字符串中的文本或字符替換為另一個文本或字符。
  • TRIM:
  • TRIM函數從文本字符串中刪除所有多餘的空格,並且僅在單詞之間保留單個空格。
  • MID:
  • MID函數從文本字符串的中間返回特定字符。
  • LEN:
  • LEN函數返回文本字符串中的字符數。

更多文章:

  • 從多行單元格中提取文本的最後一行
  • 通常,要從由換行符分隔的文本字符串中提取文本的最後一行,沒有直接的方法可以解決。 本文中,我將介紹一個公式來處理Excel中的此任務。

最佳辦公效率工具

Kutools for Excel-幫助您從人群中脫穎而出

您想快速,完美地完成日常工作嗎? Kutools for Excel具有300個強大的高級功能(合併工作簿,按顏色求和,拆分單元格內容,轉換日期等),並為您節省80%的時間。

  • 專為1500個工作方案而設計,可幫助您解決80%的Excel問題。
  • 每天減少數千次鍵盤和鼠標的點擊,減輕您疲倦的眼睛和手的疲勞。
  • 在3分鐘內成為Excel專家。 不再需要記住任何痛苦的公式和VBA代碼。
  • 30天無限制免費試用。 60天退款保證。 免費升級和支持2年。
Excel功能區(已安裝Kutools for Excel)

Office選項卡-在Microsoft Office(包括Excel)中啟用選項卡式閱讀和編輯

  • 一秒鐘即可在數十個打開的文檔之間切換!
  • 每天為您減少數百次鼠標單擊,告別鼠標手。
  • 查看和編輯多個文檔時,可將您的工作效率提高50%。
  • 像Chrome,Firefox和新的Internet Explorer一樣,為Office(包括Excel)帶來高效選項卡。
Excel的屏幕截圖(已安裝Office選項卡)
按評論排序
留言 (0)
還沒有評分。 成為第一位評論!
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點