如何從文字字串中提取大寫字母或以大寫字母開頭的單詞?
Author: Xiaoyang Last Modified: 2025-05-12
如果您有一系列的文字字串,現在您想從儲存格中提取所有僅包含大寫字母的部分,或者提取以大寫字母開頭的單詞。該如何在 Excel 中解決這個問題呢?
使用自定義函數從文字字串中提取大寫字母
以下 VBA 程式碼可以幫助您從儲存格中提取僅包含大寫字母的部分,請按照以下步驟操作:
1. 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 視窗。
2. 點擊 插入 > 模組,然後將以下程式碼粘貼到 模組視窗中。
VBA 程式碼:僅從文字字串中提取大寫字母:
Function ExtractCap(Txt As String) As String
'Updateby Extendoffice
Application.Volatile
Dim xRegEx As Object
Set xRegEx = CreateObject("VBSCRIPT.REGEXP")
xRegEx.Pattern = "[^A-Z]"
xRegEx.Global = True
ExtractCap = xRegEx.Replace(Txt, "")
Set xRegEx = Nothing
End Function
3. 然後保存程式碼並關閉程式碼視窗,返回工作表,在空白儲存格中輸入公式:=EXTRACTCAP(A2),這就是您要輸出結果的位置,然後向下拖動填充柄至需要應用公式的儲存格,所有大寫字母都會立即被提取出來,請參見截圖:
使用自定義函數從文字字串中提取以大寫字母開頭的單詞
如果您需要從文字字串中提取以大寫字母開頭的單詞,以下 VBA 程式碼可能會對您有所幫助。
1. 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 視窗。
2. 點擊 插入 > 模組,然後將以下程式碼複製並粘貼到模組視窗中。
VBA 程式碼:提取以大寫字母開頭的單詞:
Function StrExtract(Str As String) As String
'Updateby Extendoffice
Application.Volatile
Dim xStrList As Variant
Dim xRet As String
Dim I As Long
If Len(Str) = 0 Then Exit Function
xStrList = Split(Str, " ")
If UBound(xStrList) >= 0 Then
For I = 0 To UBound(xStrList)
If xStrList(I) = StrConv(xStrList(I), vbProperCase) Then
xRet = xRet & xStrList(I) & " "
End If
Next
StrExtract = Left(xRet, Len(xRet) - 1)
End If
End Function
3. 然後保存程式碼並關閉程式碼視窗,在數據旁邊的空白儲存格中輸入公式:=StrExtract(A2),然後向下拖動填充柄至需要獲取結果的儲存格,所有以大寫字母開頭的單詞都被提取出來了,請參見截圖:
最佳辦公效率工具
🤖 | 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%,每天為您減少數百次鼠標點擊!