KutoolsforOffice — 一套方案,五大工具。事半功倍。三月特賣:20% 折扣

如何從文字字串中提取前兩個、最後兩個或第 n 個字詞?

作者Xiaoyang修改日期

在 Excel 中處理大量文字資料時,經常需要從每個儲存格中提取特定字詞,例如開頭幾個字詞、結尾幾個字詞,或位於特定位置的字詞。常見應用情境包括:從包含多個字詞的文字項目中擷取姓名、地址、關鍵字或唯一識別碼,尤其適用於以空格分隔的資料格式。舉例來說,某儲存格可能包含一句完整描述或一組產品代碼,而您只需取出前三個字詞,或僅保留最後兩個字詞以進行後續處理。雖然 Excel 未內建可直接達成此目的的函數,但透過多種靈活方法,仍能輕鬆應對不同規模與需求的資料處理任務。本文將介紹實用公式、輔助工具及其他自動化技巧,協助您高效提取文字字串中的首字詞、末字詞或第 n 個字詞。

提取前兩個、後兩個或第 n 個字詞

使用公式從文字字串中提取前兩個或前 n 個字詞

使用公式從文字字串中提取最後兩個或最後 n 個字詞

使用便捷功能提取文字字串中的第一個或第 n 個字詞

使用 VBA 巨集提取字詞(第一個、最後一個或第 n 個字詞)

使用適用於 Excel 的 Microsoft Power Query 提取字詞(分割後再合併)


使用公式從文字字串中提取前兩個或前 n 個字詞

若要從儲存格內容中提取開頭的幾個字詞,可使用下列公式。當您資料中的字詞皆以一致的分隔符號(例如空格)區隔,且希望擷取儲存格前三個字詞時,此方法尤其實用。這些公式操作簡便,適用於中等規模的資料集,並能輕鬆調整以提取任意數量的開頭字詞。

在空白儲存格(例如 C2)中輸入下列任一公式,然後向下拖曳填滿控點,將公式套用至所有相關列。您即可從每個文字字串中提取出所需數量的開頭字詞,如下圖所示。

=TRIM(LEFT(A2, FIND("^",SUBSTITUTE(A2, " ", "^",3)&"^")))

套用公式以提取前兩個或第 n 個字詞

說明與提示:

1. 在上述範例公式中,A2 是包含您原文本的儲存格,而 3 則是您想提取的字詞數量。請依您的資料調整這些參照!

2. 若每列需提取的字詞數量不同,且已於 B 欄指定,您可使用以下彈性公式:

=TRIM(LEFT(SUBSTITUTE(A2," ",REPT(" ",1000),B2),1000))

套用公式,根據儲存格值提取前 n 個字詞

此公式可讓您透過參照儲存格(例如 B2)動態指定要提取的字詞數量,請務必確保 B2 包含有效的整數。

3. 若您的文字使用其他分隔符號(例如逗號或分號),只需將公式中的空格字元(" ")替換為您所用的特定分隔符號即可!

4. 請留意前導或尾隨的雙空格及多個連續空格,這些都會影響結果!使用 TRIM 即可輕鬆移除多餘空格。

5. 若儲存格中的總字詞數少於您試圖提取的數量,公式將無錯誤地傳回完整文字內容。


使用公式從文字字串中提取最後兩個或最後 n 個字詞

若要從文字字串中提取最後幾個字詞(例如最後兩個或最後 n 個字詞),以下公式可助您一臂之力。此方法特別適用於需要一致提取尾端字詞的資料集,例如姓氏、副檔名,或位於文字儲存格結尾的識別碼。

請將下方公式複製並貼到您希望顯示結果的空白儲存格中,接著向下拖曳填滿控點,即可套用至其他列。

=MID(A2,FIND("@",SUBSTITUTE(A2," ","@",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))-(3-1)))+1,LEN(A2))

套用公式以提取最後兩個或第 n 個字詞

注意事項與實作技巧:
  • A2:包含文字的來源儲存格。
  • 3:您想提取的最後幾個字詞數量。若要提取最後 5 個字詞,只需將公式中的 3 改為 5 即可。
  • 若儲存格中的總字詞數少於您指定的數量,公式將直接傳回該儲存格內所有可用的字詞。
  • 若您的資料使用其他分隔符號(例如逗號或定位字元),請據此調整公式。
  • 資料中若含有複雜或不一致的空格,可能導致結果不準確;建議在套用公式前,盡可能先清理文字。

使用便捷功能提取文字字串中的第一個或第 n 個字詞

若您只需提取文字字串中的第一個或特定(第 n 個)字詞,且偏好無需記憶或編輯複雜公式的解決方案,推薦使用 Kutools for Excel!其 提取儲存格中第 N 個單詞功能,讓您輕鬆選取儲存格內指定位置的字詞,無論是偶爾使用還是重複執行都得心應手。若追求快速、選單驅動、不易出錯且無需手動輸入公式的操作體驗,此方法不容錯過!

Kutools for Excel 提供超過 300 項進階功能,簡化複雜作業,提升創造力與效率。整合 AI 功能,Kutools 能精準自動化各項任務,讓資料管理輕鬆無負擔。Kutools for Excel 的詳細資訊……         免費試用……

安裝 Kutools for Excel 後,請依下列步驟操作:

1. 選取您希望顯示提取結果的儲存格,然後依序點選 Kutools > 公式助手 > 公式助手,如下圖所示:

點擊 Kutools 的公式助手功能

2. 在公式助手對話方塊中,請執行下列步驟:

  • 請從 Text公式類型下拉選單中選取。
  • 從公式清單方塊中選取 提取儲存格中第 N 個單詞
  • Cell 文字方塊中指定來源儲存格,並在 The Nth 文字方塊中輸入所需字詞的位置(例如:2 代表第二個字詞)。

在對話框中指定儲存格參照

3. 按一下確定以傳回結果,再向下拖曳填滿控點,即可將相同邏輯套用至清單中的其餘項目。請參閱下圖:

將公式向下拖曳至其他儲存格

當您在擷取需求經常變動,或偏好使用引導式介面而非每次手動建立自訂公式時,此方法尤其適用。


使用 VBA 巨集提取字詞(第一個、最後一個或第 n 個字詞)

針對更進階的使用情境(例如動態擷取文字中的第一個、最後一個或任意第 n 個單字,或是處理大型且經常更新的資料集),VBA 巨集比單純使用公式更具彈性與自動化優勢。透過 VBA,您能打造可重複使用的工具,快速處理大量儲存格,並依需求靈活指定要擷取的單字或單字群組。當您需要定期以相同方式處理文字,或希望避開繁複的巢狀公式時,這項功能尤其實用。

典型應用情境:批次擷取並匯入文字、批量清理資料,或快速準備標準化報表。

1. 點擊開發人員>Visual Basic,即可開啟 VBA 編輯器。在 Microsoft Visual Basic for Applications 視窗中,選取插入> 模組,並將下列程式碼貼到新模組中:

Sub ExtractWord()
    Dim Rng As Range
    Dim Cell As Range
    Dim WordPos As Integer
    Dim Words() As String
    Dim ExtractedWord As String
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set Rng = Application.Selection
    Set Rng = Application.InputBox("Select range to extract word from", xTitleId, Rng.Address, Type:=8)
    
    WordPos = Application.InputBox("Enter which word number to extract (1=first,2=second, etc., or -1 for last)", xTitleId, 1, Type:=1)
    
    Application.ScreenUpdating = False
    
    For Each Cell In Rng
        Words = Split(Application.Trim(Cell.Value), " ")
        
        If WordPos = -1 Then
            If UBound(Words) >= 0 Then
                ExtractedWord = Words(UBound(Words))
            Else
                ExtractedWord = ""
            End If
        ElseIf WordPos >= 1 And WordPos <= UBound(Words) + 1 Then
            ExtractedWord = Words(WordPos - 1)
        Else
            ExtractedWord = ""
        End If
        
        Cell.Offset(0, 1).Value = ExtractedWord
    Next Cell
    
    Application.ScreenUpdating = True
    
    MsgBox "Extraction complete! Results placed in the column to the right.", vbInformation, xTitleId
End Sub

2. 點擊執行按鈕執行按鈕,或按下 F5 即可執行巨集!巨集將提示您選取資料區域,並詢問要擷取哪個單字位置(例如:1 代表第一個單字,-1 代表最後一個單字),隨即將擷取結果自動填入右側相鄰欄位。請確保您的分隔符號為空格;若需使用其他分隔符號,請依需求調整 Split 函數。

此 VBA 方法能顯著提升重複性批次擷取作業的處理速度,尤其適用於公式解法過於繁瑣的情境。注意:執行巨集前,請務必先儲存活頁簿,並確認您的安全性設定已啟用巨集功能。


使用適用於 Excel 的 Microsoft Power Query 擷取單字(分割後再重新組合)

當您在處理大型資料表或重複性的匯入/匯出工作時,適用於 Excel 的 Microsoft Power Query提供了強大替代方案,能輕鬆從文字字串中擷取並操作單字!它位於資料索引標籤中的取得與轉換資料區塊,讓您透過直覺的視覺化介面,依分隔符號(如空格、逗號等)分割文字、精準擷取所需單字,再重新組合或直接載入回 Excel。此流程高度自動化且可重複執行,非常適合批次資料清理,尤其在處理數百甚至數千列資料時,效率大幅提升,絕對不容錯過!

主要優勢:適用於重複使用、提供直覺化的視覺介面,且當單字位置需求變更時,調整更加輕鬆靈活。

操作步驟:

  1. 選取您的數據區域,然後選擇 Data>From Table/Range,即可將資料載入適用於 Excel 的 Microsoft Power Query。若系統提示,請確認或建立資料表。
  2. 在適用於 Excel 的 Microsoft Power Query 編輯器中,選取包含文字的欄。
  3. 按一下 Split Column>By Delimiter
    功能區上「依分隔符號」選項的螢幕截圖
  4. 選取 Space 或輸入自訂分隔符號,再選擇 Split atEach occurrence of the delimiter,然後按一下「確定」。
    指定分隔符號的螢幕截圖
  5. 文字中的每個字詞現將分別顯示於各自的欄位中(例如 Column 1、Column 2 等)。若您希望提取前兩個字詞,請重新合併分割後的字詞:選取對應欄位,按一下右鍵開啟標題功能表,然後選擇 Merge Columns
    內容功能表中「合併欄位」選項的螢幕截圖
  6. 選擇您偏好的分隔符號(例如空格或逗號),然後點擊 OK
    指定用於合併文字之分隔符號的螢幕截圖
  7. 最後點擊 Close & Load,即可將結果載入至目前工作簿的新工作表中。

適用於 Excel 的 Microsoft Power Query 還能輕鬆重複使用此流程:只要底層資料表有所變更,您只需重新整理查詢,即可確保結果一致,無需手動重新套用公式或巨集。請留意適用於 Excel 的 Microsoft Power Query 所產生的欄位數量,並考量較短文字字串中可能遺漏某些單字的情形。


更多相關文章:

  • 從儲存格中提取多行內容
  • 若您有一串以換行符號分隔的文字(輸入時按 Alt + Enter 所產生),現在希望將這些文字行提取到多個儲存格中(如下圖所示),該如何透過 Excel 公式達成?
  • 在 Excel 中從文字字串提取子字串
  • 在 Excel 中,從文字字串中提取子字串是常見需求。雖然 Excel 沒有專門對應的函數,但只要靈活搭配 LEFT、RIGHT、MID 與 SEARCH 函數,就能輕鬆依需求取出各種子字串。
  • 提取文字字串中括號內的內容
  • 若文字字串中部分內容被括號包圍,而您需要快速提取所有括號內的文字(如下圖所示),該如何在 Excel 中輕鬆完成這項任務?
  • 提取特定字元最後一次出現後的內容
  • 若您有一串複雜的文字(如下圖所示,單一儲存格內同時包含連字號、逗號與空格等多種分隔符號),現在希望找出連字號最後一次出現的位置,並提取其後的子字串。

最佳 Office 生產力工具

🤖KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行     產生程式碼  建立自訂公式    分析資料並產生圖表  呼叫增強函數……
熱門功能尋找、醒目提示或標記重複值     刪除空白行     合併列或儲存格而不遺失資料     不使用公式的四捨五入……
高級 LOOKUP多重條件 VLookup    多重數值 VLookup     跨多個工作表 VLookup      模糊查找……
高級下拉列表快速建立下拉式清單     相依式下拉式清單     多選下拉式清單……
欄位管理員新增指定數量的欄位移動欄位切換隱藏欄位的可見狀態比較範圍與欄位……
精選功能網格聚焦     設計視圖   增強編輯欄    工作簿與工作表管理員     資源庫(自動文字)  日期提取     合併工作表    加密/解密儲存格    依清單傳送電子郵件     超級篩選      特殊篩選(篩選粗體儲存格/斜體/刪除線……) ......
頂尖 15 工具組12 文字工具添加文本刪除特定字符,……)   50+ 圖表 類型甘特圖,……)   40+ 實用公式基於生日計算年齡,……)   19 插入工具插入二維碼從路徑插入圖片,……)   12 轉換工具金額轉大寫匯率轉換,……)   7 合併和拆分工具高級合併行分割儲存格,……)……以及更多
在您的慣用語言中使用 Kutools—支援英文、西班牙文、德文、法文、中文及另外 40+ 種語言!

運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……


Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!

  • 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
  • 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
  • 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!

所有 Kutools 增益集,一個安裝程式

Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!

ExcelWordOutlookTabsPowerPoint
  • 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
  • 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
  • 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
  • 30 天完整功能試用— 無需註冊,無需信用卡
  • 超值之選— 比單獨購買各增益集更省費用