VBA : Comment supprimer les caractères spéciaux d’une chaîne



Vous pouvez utiliser la syntaxe de base suivante dans VBA pour supprimer les caractères spéciaux des chaînes :

Sub ReplaceSpecialChars()
Dim i As Integer
    
For i = 2 To 8
Range("B" & i) = Replace(Replace(Replace(Range("A" & i), "!", ""), "@", ""), "#", "")
Next i
End Sub

Cet exemple particulier remplace les caractères spéciaux suivants de chaque chaîne de la plage de cellules A2:A8 et génère les nouvelles chaînes dans les cellules B2:B8 :

  • !
  • @
  • #

Notez que nous avons utilisé trois méthodes Replace imbriquées pour supprimer chacun de ces caractères spéciaux des chaînes.

Pour supprimer encore plus de caractères spéciaux, utilisez simplement des méthodes Replace plus imbriquées.

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : supprimer les caractères spéciaux d’une chaîne à l’aide de VBA

Supposons que nous ayons la liste de chaînes suivante dans Excel :

Supposons que nous souhaitions supprimer les caractères spéciaux suivants de chaque chaîne :

  • !
  • @
  • #

Nous pouvons créer la macro suivante pour ce faire :

Sub ReplaceSpecialChars()
Dim i As Integer
    
For i = 2 To 8
Range("B" & i) = Replace(Replace(Replace(Range("A" & i), "!", ""), "@", ""), "#", "")
Next i
End Sub

Lorsque nous exécutons cette macro, nous recevons le résultat suivant :

VBA supprime les caractères spéciaux de la chaîne

La colonne B affiche chacune des chaînes de la colonne A avec les caractères spéciaux supprimés.

Remarque : Vous pouvez trouver la documentation complète de la méthode VBA Replace ici .

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

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *