Come estrarre lettere maiuscole o parole che iniziano con una lettera maiuscola dalle stringhe di testo?
Se hai un elenco di stringhe di testo e desideri estrarre solo tutte le lettere maiuscole o le parole che iniziano con una lettera maiuscola dalle celle, come potresti risolverlo in Excel?
Estrarre lettere maiuscole dalle stringhe di testo con una Funzione Definita dall'Utente
Estrarre lettere maiuscole dalle stringhe di testo con una Funzione Definita dall'Utente
Il seguente codice VBA può aiutarti a estrarre solo le lettere maiuscole dalle celle; procedi nel seguente modo:
1. Tieni premuti i tasti ALT + F11 per aprire la finestra di Microsoft Visual Basic for Applications.
2. Clicca su Inserisci > Modulo, e incolla il seguente codice nella finestra del Modulo.
Codice VBA: Estrai solo lettere maiuscole dalle stringhe di testo:
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. Salva quindi il codice e chiudi questa finestra, torna al foglio di lavoro, inserisci questa formula: =EXTRACTCAP(A2) in una cella vuota dove desideri visualizzare il risultato, e trascina la maniglia di riempimento verso il basso nelle celle in cui vuoi applicare questa formula, e tutte le lettere maiuscole verranno estratte immediatamente, vedi screenshot:
Estrarre parole che iniziano con una lettera maiuscola dalle stringhe di testo con una Funzione Definita dall'Utente
Se hai bisogno di estrarre le parole che iniziano con una lettera maiuscola dalle stringhe di testo, il seguente codice VBA potrebbe esserti utile.
1. Tieni premuti i tasti ALT + F11 per aprire la finestra di Microsoft Visual Basic for Applications.
2. Clicca su Inserisci > Modulo, quindi copia e incolla il seguente codice nella finestra del Modulo.
Codice VBA: Estrai parole che iniziano con una lettera maiuscola:
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. Salva quindi il codice e chiudi la finestra del codice, inserisci questa formula: =StrExtract(A2) in una cella vuota accanto ai tuoi dati, poi trascina la maniglia di riempimento verso il basso nelle celle in cui vuoi ottenere il risultato, e tutte le parole che iniziano con una lettera maiuscola verranno estratte, vedi screenshot:
I migliori strumenti per la produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!