Skip to main content

如何從單元格中提取每個單詞的首字母?

Author: Xiaoyang Last Modified: 2025-05-12
extract first letter of each word

假設您的工作表中有一系列國家名稱,您希望提取這些名稱中每個單詞的首字母。Excel 並未提供直接的功能來提取單元格內每個單詞的首字母。然而,我將介紹一些實用的方法,幫助您高效完成此任務,使整個過程簡單且有效。


使用公式從單元格中提取每個單詞的首字母

要獲取單元格內每個單詞的首字母,以下陣列公式可以幫助您。

1. 請將以下公式複製到您希望獲得結果的空白單元格中,然後同時按下 Ctrl + Shift + Enter 鍵以獲取第一個結果。

=CONCAT(LEFT(FILTERXML("<a><b>"&SUBSTITUTE(A2," ","</b><b>")&"</b></a>","//b"),1))

2. 接下來,向下拖動公式填充其他單元格。此操作將一次性自動提取每個單元格中每個單詞的首字母。請參閱截圖:

Extract first letter of each word with formula

此公式的解釋:
  • SUBSTITUTE(A2," ","</b><b>"):此函數將單元格 A2 中文本中的每個空格替換為 。這有效地將文本中的每個單詞用這些 XML 標籤分隔開。例如,如果 A2 包含 "Hello World",則該部分公式會將其轉換為 "Hello</b><b>World"。
  • "<a><b>"&...&" </b></a>":這一部分將 SUBSTITUTE 函數的結果用 <a><b> 包裹在開始處,並在末尾加上 </b></a>。繼續上面的例子,字符串現在變為 <a><b>Hello</b><b>World</b></a>,形成一個有效的 XML 結構,其中每個單詞都被包含在 <b> 標籤內。
  • FILTERXML(...,"//b"):FILTERXML 用於解析前幾步驟中創建的 XML 字符串。XPath 查詢 //b 選擇所有 <b> 標籤內的元素,即原始字符串中的每個單詞。使用我們的例子,FILTERXML 將返回包含兩個元素的陣列:"Hello" 和 "World"。
  • LEFT(...,1):然後將 LEFT 函數應用於 FILTERXML 返回的陣列中的每個元素,提取每個單詞的首字母。在這個例子中,結果將是 "H" 和 "W"。
  • CONCAT(...):最後,CONCAT 函數將陣列中的所有元素連接成一個字符串。對於我們的 "Hello World" 示例,它將 "H" 和 "W" 連接起來生成 "HW"。

使用 Kutools AI 助手從單元格中提取每個單詞的首字母

使用 Kutools AI 助手快速從單元格中提取每個單詞的首字母。無需複雜的公式;AI 助手自動化處理任務,讓數據處理變得簡單高效。簡化您的 Excel 工作流程,讓您的工作更輕鬆。試試 Kutools AI 助手,體驗智能的 Excel 操作!

Kutools for Excel 提供超過 300 種進階功能,簡化複雜任務,提升創造力與效率。 結合 AI 能力,Kutools 能夠精準自動化任務,讓數據管理變得輕而易舉。Kutools for Excel 的詳細資訊...免費試用...

安裝 Kutools for Excel 後,請點擊 Kutools AI > AI 助手 以打開 Kutools AI 助手 面板:

  1. 選擇數據列表,然後在聊天框中輸入您的需求,並點擊 發送 按鈕或按 Enter 鍵發送問題;
  2. 分析完畢後,點擊 執行 按鈕運行。Kutools AI 助手將使用 AI 處理您的請求,並將結果直接返回到 Excel 中。


使用用戶定義函數從單元格中提取每個單詞的首字母

從單元格中提取每個單詞的首字母是一項可以通過在 Excel 中使用用戶定義函數 (UDF) 大大優化的任務。本節探討如何創建和使用 UDF 來高效完成此任務。

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

2. 點擊 插入 > 模塊,並在模塊窗口中粘貼以下代碼。

Function GetFirstLetters(rng As Range) As String
'Updateby Extendoffice
    Dim arr
    Dim I As Long
    arr = VBA.Split(rng, " ")
    If IsArray(arr) Then
        For I = LBound(arr) To UBound(arr)
            GetFirstLetters = GetFirstLetters & Left(arr(I), 1)
        Next I
    Else
        GetFirstLetters = Left(arr, 1)
    End If
End Function

3. 然後保存並關閉此代碼,返回工作表,並在空白單元格中輸入此公式 =GetFirstLetters(A2)。然後,拖動填充柄到您想應用此公式的單元格。這樣,所有單詞的首字母都已從一系列單詞中提取出來,請參閱截圖:

Extract first letter of each word with User Defined Function


相關文章:

  • 從文本字符串中提取前或後兩個或 n 個單詞
  • 如果您有一系列由空格分隔的文本字符串,並且現在您想從單元格值中提取前或後三個或 n 個單詞以獲得如下截圖所示的結果。本文將介紹一些公式,用於從 Excel 中的文本字符串中提取前或後兩個或 n 個單詞。
  • 僅提取空格或逗號前/後的文本
  • 當您想從列表中提取空格前或後的文本時(如下所示),您是否有好的方法來完成它?讓我告訴您一些巧妙的方法,僅在 Excel 中提取空格前或後的文本。
  • 從文本字符串中提取電子郵件地址
  • 當您從網站導入一些電子郵件地址到 Excel 工作表時,總是包含不相關的文本,但現在您只想從文本字符串中提取純電子郵件地址(請參見以下截圖)。如何快速僅從單元格文本中獲取電子郵件地址?
  • 從兩個不同字符之間提取字符串
  • 如果您在 Excel 中有一系列字符串,需要從中提取兩個字符之間的部分字符串(如下截圖所示),如何快速處理?這裡,我介紹一些解決此問題的方法。

最佳辦公效率工具

🤖 Kutools AI 助手:基於智能執行方式革新數據分析:智能執行   |  生成代碼  |  創建自訂公式  |  分析數據並生成圖表  |  調用 Kutools 函數
熱門功能查找、標記重複值或識別重複項   |  刪除空行   |  合併列或單元格而不丟失數據   |   四捨五入無需公式 ...
高級 LOOKUP多條件 VLookup    多值 VLookup  |   多表查找   |   模糊查找 ....
高級下拉列表快速創建下拉列表   |  依賴下拉列表   |  多選下拉列表 ....
列管理器添加特定數量的列  |  移動列  |  切換隱藏列的可見狀態  |  比較區域和列 ...
特色功能網格聚焦   |  設計檢視   |   增強編輯欄    工作簿與工作表管理器   |  資源庫(自動文本)   |  日期提取器   |  合併資料   |  加密/解密儲存格    按列表發送電子郵件   |  超級篩選   |   特殊篩選(篩選粗體/斜體/刪除線...) ...
頂級 15 種工具集12 個文本工具添加文本刪除特定字符、...)   |   50+ 圖表 類型甘特圖、...)   |   40+ 實用 公式基於生日計算年齡、...)   |   19 個插入工具插入QR碼根據路徑插入圖片、...)   |   12 個轉換工具金額轉大寫匯率轉換、...)   |   7 個合併與分割工具高級合併行分割儲存格、...)   |   ... 還有更多

使用 Kutools for Excel 提升您的 Excel 技巧,體驗前所未有的高效。 Kutools for Excel 提供超過 300 種高級功能來提高生產力並節省時間。  點擊這裡獲取您最需要的功能...


Office Tab 將標籤式界面帶到 Office,讓您的工作更加輕鬆

  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中啟用標籤式編輯和閱讀。
  • 在同一窗口的新標籤中打開和創建多個文檔,而不是在新窗口中。
  • 將您的生產力提高 50%,每天為您減少數百次鼠標點擊!