如何在Excel中提取大写字母或以大写字母开头的单词


Microsoft Excel 是数据分析和处理领域中一个强大的工具,具有广泛的操作和功能。从文本字符串中提取特定信息是一项常见活动。例如,假设您拥有一个包含文本条目的数据集,并希望提取所有大写字母或以大写字母开头的术语。

在本教程结束时,您将掌握在Excel中从文本字符串中提取大写字母和以大写字母开头的单词的过程。这项专业知识将使您能够在数据分析项目中处理类似的任务,从而节省您的时间和精力。

从文本字符串中提取大写字母或以大写字母开头的单词

这里,我们将首先使用VBA创建一个用户自定义公式,然后使用该公式来完成任务。让我们来看一个简单的过程,了解如何在Excel中从文本字符串中提取大写字母或以大写字母开头的单词。

步骤1

考虑一个Excel表格,其中表格中的数据类似于下图。

首先,右键单击工作表名称,然后选择“查看代码”以打开VBA应用程序。

步骤2

然后单击“插入”,选择“模块”,然后将下面的代码复制到文本框中。

示例

Function ExtractCap(Txt As String) As String
   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

然后在Excel中,单击一个空单元格,输入公式`=EXTRACTCAP(A2)`,然后单击回车键以提取第一个值的大写字母。然后使用自动填充向下拖动以完成任务。

空单元格 > 公式 > 回车 > 拖动。

注意

如果您想提取单词,请使用以下代码并使用公式“=StrExtract(A2)” 。

示例

Function StrExtract(Str As String) As String
   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

结论

在本教程中,我们使用了一个简单的示例来演示如何从Excel中的文本字符串中提取大写字母或以大写字母开头的单词,以突出显示特定数据集。

更新于:2023年7月12日

3K+ 次查看

开启你的职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.