¿Cómo extraer letras mayúsculas o palabras que comienzan con una letra mayúscula de cadenas de texto?
Si tienes una lista de cadenas de texto y deseas extraer solo las letras mayúsculas o las palabras que comienzan con una letra mayúscula de las celdas, ¿cómo podrías resolverlo en Excel?
Extraer letras mayúsculas de cadenas de texto con una Función Definida por el Usuario
Extraer letras mayúsculas de cadenas de texto con una Función Definida por el Usuario
El siguiente código VBA puede ayudarte a extraer solo las letras mayúsculas de las celdas. Por favor, sigue estos pasos:
1. Mantén presionadas las teclas ALT + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haz clic en Insertar > Módulo, y pega el siguiente código en la Ventana del Módulo.
Código VBA: Extraer solo letras mayúsculas de cadenas 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. Luego guarda el código y cierra esta ventana, regresa a la hoja de cálculo, introduce esta fórmula: =EXTRACTCAP(A2) en una celda en blanco donde deseas obtener el resultado, y luego arrastra el controlador de relleno hacia abajo en las celdas donde desees aplicar esta fórmula, y todas las letras mayúsculas se habrán extraído de una vez, mira la captura de pantalla:
Extraer palabras que comienzan con una letra mayúscula de cadenas de texto con una Función Definida por el Usuario
Si necesitas extraer las palabras que comienzan con una letra mayúscula de las cadenas de texto, el siguiente código VBA puede ayudarte.
1. Mantén presionadas las teclas ALT + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haz clic en Insertar > Módulo, luego copia y pega el siguiente código en la Ventana del Módulo.
Código VBA: Extraer palabras que comienzan con una letra mayú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. Y luego guarda el código y cierra la ventana del código, introduce esta fórmula: =StrExtract(A2) en una celda en blanco junto a tus datos, luego arrastra el controlador de relleno hacia abajo en las celdas donde deseas obtener el resultado, y todas las palabras que comienzan con una letra mayúscula se han extraído, mira la captura de pantalla:
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!