VBA : Comment supprimer des nombres d’une chaîne
Vous pouvez créer la fonction suivante dans VBA pour supprimer des nombres d’une chaîne dans une cellule dans Excel :
Function RemoveNumbers(CellText As String) As String
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[0-9]"
RemoveNumbers = .Replace(CellText, "")
End With
End Function
Vous pouvez ensuite utiliser cette fonction pour supprimer les nombres de n’importe quelle cellule de votre choix dans Excel.
L’exemple suivant montre comment utiliser cette fonction dans la pratique.
Exemple : supprimer des nombres d’une chaîne à l’aide de VBA
Supposons que nous ayons la liste suivante d’ID d’employé dans Excel :
Supposons que nous souhaitions supprimer les chiffres de chaque chaîne de la colonne ID d’employé .
Nous pouvons créer la fonction suivante dans VBA pour ce faire :
Function RemoveNumbers(CellText As String) As String
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[0-9]"
RemoveNumbers = .Replace(CellText, "")
End With
End Function
Une fois que nous avons créé cette fonction, nous pouvons alors taper la formule suivante dans la cellule B2 pour renvoyer le numéro d’employé dans la cellule A2 avec tous les chiffres supprimés :
=RemoveNumbers(A2)
Nous pouvons ensuite cliquer et faire glisser cette formule vers chaque cellule restante de la colonne B :
La colonne B affiche chacune des chaînes de la colonne A avec les chiffres supprimés.
Par exemple:
- 4009Andy devient Andy
- 1540Bob devient Bob
- 1500Tchad09 devient Tchad
- 1600Doug devient Doug
Et ainsi de suite.
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