Comment extraire des lettres majuscules ou des mots commençant par une majuscule à partir de chaînes de texte?
Si vous avez une liste de chaînes de texte, vous souhaitez maintenant extraire toutes les majuscules uniquement ou les mots commençant par une majuscule des cellules. Comment pourriez-vous le résoudre dans Excel?
Extraire les lettres majuscules des chaînes de texte avec la fonction définie par l'utilisateur
Extraire les lettres majuscules des chaînes de texte avec la fonction définie par l'utilisateur
Le code VBA suivant peut vous aider à extraire uniquement les lettres majuscules des cellules, procédez comme suit:
1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.
2. Cliquez insérer > Moduleet collez le code suivant dans le Module Fenêtre.
Code VBA: extraire uniquement les lettres majuscules des chaînes de texte:
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. Ensuite, enregistrez le code et fermez ce code, revenez à la feuille de calcul, entrez cette formule: = EXTRACTCAP (A2) dans une cellule vide où vous souhaitez afficher le résultat, puis faites glisser la poignée de recopie vers les cellules auxquelles vous souhaitez appliquer cette formule, et toutes les lettres majuscules ont été extraites en même temps, voir capture d'écran:
Extraire des mots commençant par une majuscule à partir de chaînes de texte avec la fonction définie par l'utilisateur
Si vous avez besoin d'extraire les mots commençant par une majuscule à partir de chaînes de texte, le code VBA suivant peut vous aider.
1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.
2Cliquez sur insérer > Module, puis copiez et collez le code suivant dans le Module Fenêtre.
Code VBA: Extraire les mots commençant par une majuscule:
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. Et puis enregistrez le code et fermez la fenêtre de code, entrez cette formule: = StrExtract (A2) dans une cellule vide à côté de vos données, puis faites glisser la poignée de remplissage vers les cellules dont vous souhaitez obtenir le résultat, et tous les mots commençant par une majuscule sont extraits, voir capture d'écran:
Meilleurs outils de productivité bureautique
Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et facilite grandement votre travail
- Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!