Como extrair letras maiúsculas ou palavras que começam com letra maiúscula de sequências de texto?
Se você tem uma lista de sequências de texto e deseja extrair apenas as letras maiúsculas ou as palavras que começam com uma letra maiúscula das células, como você poderia resolver isso no Excel?
Extrair letras maiúsculas de sequências de texto com Função Definida pelo Usuário
Extrair letras maiúsculas de sequências de texto com Função Definida pelo Usuário
O seguinte código VBA pode ajudá-lo a extrair apenas as letras maiúsculas das células. Por favor, faça o seguinte:
1. Pressione e segure as teclas ALT + F11 para abrir a janela do Microsoft Visual Basic for Applications.
2. Clique em Inserir > Módulo e cole o seguinte código na Janela do Módulo.
Código VBA: Extrair apenas letras maiúsculas de sequências de texto:
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. Em seguida, salve o código e feche esta janela de código, volte para a planilha, insira esta fórmula: =EXTRACTCAP(A2) em uma célula em branco onde você deseja exibir o resultado, e arraste a alça de preenchimento para baixo nas células onde deseja aplicar esta fórmula, e todas as letras maiúsculas serão extraídas de uma vez, veja a captura de tela:
Extrair palavras que começam com letra maiúscula de sequências de texto com Função Definida pelo Usuário
Se você precisa extrair as palavras que começam com uma letra maiúscula de sequências de texto, o seguinte código VBA pode ajudá-lo.
1. Pressione e segure as teclas ALT + F11 para abrir a janela do Microsoft Visual Basic for Applications.
2. Clique em Inserir > Módulo, depois copie e cole o seguinte código na Janela do Módulo.
Código VBA: Extrair palavras que começam com letra maiúscula:
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. E então salve o código e feche a janela de código, insira esta fórmula: =StrExtract(A2) em uma célula em branco ao lado dos seus dados, depois arraste a alça de preenchimento para baixo nas células onde deseja obter o resultado, e todas as palavras que começam com uma letra maiúscula serão extraídas, veja a captura de tela:
Melhores Ferramentas de Produtividade para Office
Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho
- Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!