VBA : Comment extraire du texte entre deux caractères
Vous pouvez créer la fonction personnalisée suivante dans VBA pour extraire le texte entre deux caractères spécifiques :
Function ExtractBetween(this_text, start_char, end_char) StartPosition = InStr(this_text, start_char) EndPosition = InStr(this_text, end_char) ExtractBetween = Mid(this_text, StartPosition + 1, EndPosition - StartPosition - 1) End Function
Vous pouvez ensuite utiliser cette fonction pour extraire le texte entre deux caractères spécifiques dans un caractère spécifique dans Excel.
L’exemple suivant montre comment utiliser cette fonction dans la pratique.
Exemple : utiliser VBA pour extraire du texte entre deux caractères
Supposons que nous disposions de l’ensemble de données suivant dans Excel contenant les valeurs d’identification et les ventes totales de divers produits dans une entreprise :
Supposons que nous souhaitions utiliser VBA pour extraire le texte entre parenthèses pour chaque cellule de la colonne A et renvoyer les résultats dans la colonne C.
Nous pouvons créer la fonction suivante pour ce faire :
Function ExtractBetween(this_text, start_char, end_char) StartPosition = InStr(this_text, start_char) EndPosition = InStr(this_text, end_char) ExtractBetween = Mid(this_text, StartPosition + 1, EndPosition - StartPosition - 1) End Function
On peut alors taper la formule suivante dans la cellule C2 pour extraire le texte entre parenthèses pour le texte de la cellule A2 :
=ExtractBetween(A2, "(", ")")
Nous pouvons ensuite cliquer et faire glisser cette formule vers chaque cellule restante de la colonne C :
La colonne C affiche désormais le texte entre parenthèses pour chaque cellule correspondante de la colonne A.
Remarque : Cette formule fonctionne en utilisant la fonction Instr dans VBA pour extraire la position des caractères de début et de fin spécifiques, puis en utilisant la fonction Mid pour renvoyer tout le texte entre ces deux caractères.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes à l’aide de VBA :
VBA : Comment compter les occurrences de caractères dans une chaîne
VBA : comment vérifier si une chaîne contient une autre chaîne
VBA : Comment compter les cellules avec un texte spécifique