Fonction TRIM en VBA: Supprimez facilement les espaces inutiles

La fonction Trim en VBA est une fonction utile pour nettoyer les chaînes de caractères. Elle permet d'éliminer les espaces inutiles en début et en fin de chaîne. Il s'agit d'une fonction très pratique, voir indispensable, si vous travaillez avec des textes en VBA (ou en Excel). Pour information, cette fonction correspond à la fonction Excel SUPPRESPACE.

VBA: fonction Trim - tout ce que vous devez savoir

Dans ce tutoriel, nous allons voir comment utiliser cette fonction, comment l'implémenter dans vos projets VBA, ainsi que les erreurs que vous pourriez rencontrer lors de son utilisation.

Syntaxe de la fonction VBA Trim()

La fonction a une syntaxe très simple ne contenant que 1 seul paramètre.

x = Trim(Texte)

Dans l'éditeur VBA (VBE), ce paramètres de la fonction Trim() s'affiche en anglais:

x = Trim(String)

Le détail des paramètres de la fonction

  • Texte ("string"): La chaîne de caractères dont vous souhaitez supprimer les espaces en début et en fin.

Exemple d'utilisation de la fonction Trim dans VBA

Prenons l'exemple suivant:

Dans cet exemple, la chaîne "     Bonjour tout le monde!   " contient des espaces en début et en fin. En utilisant la fonction Trim, ces espaces sont supprimés et la chaîne devient "Bonjour tout le monde!".

Variantes de cette fonction: LTrim et RTrim

En plus de la fonction Trim, VBA propose également deux autres fonctions similaires pour supprimer les espaces:

  • LTrim(texte): Supprime les espaces en début de chaîne.
  • RTrim(texte): Supprime les espaces en fin de chaîne.

Ces deux fonctions peuvent être utilisées pour supprimer les espaces uniquement d'un côté de la chaîne, selon vos besoins.

Utilisation pratique de la fonction Trim dans un projet VBA

Supposons que vous avez une liste de noms dans un classeur Excel, et que certains d'entre eux contiennent des espaces inutiles en début et en fin. Vous pouvez utiliser la fonction Trim pour nettoyer ces noms.

Voici un exemple de code VBA pour illustrer ce cas:

Dans cet exemple, le code parcourt les cellules de la plage A2:A120 (modifiable selon vos besoins) et utilise la fonction Trim pour supprimer les espaces inutiles en début et en fin de chaque nom.

Erreurs potentielles lors de l'utilisation de la fonction Trim

Si cette fonction est assez simple et ne génère généralement pas d'erreurs, il y a certaines situations où des erreurs pourraient survenir:

  1. Type de donnée incorrect
    Si vous essayez d'utiliser la fonction Trim sur une valeur qui n'est pas une chaîne de caractères, vous pouvez obtenir une erreur de type "Type Mismatch" (erreur 13). Pour éviter cette erreur, assurez-vous que la valeur sur laquelle vous utilisez la fonction Trim est bien une chaîne de caractères.
  2. Utilisation de Trim sur une variable non initialisée
    Si vous essayez d'utiliser cette fonction sur une variable qui n'a pas été initialisée, vous obtiendrez une erreur de type "Object Required" (erreur 424). Pour éviter cela, assurez-vous de vérifier que la variable est initialisée avant de l'utiliser avec Trim. Par exemple, vous pouvez utiliser une condition pour vérifier si la variable n'est pas vide :
  3. Fonction Trim utilisée sur un objet
    Si vous essayez d'utiliser la fonction Trim sur un objet, par exemple une cellule ou une plage de cellules, vous obtiendrez également une erreur de type "Type Mismatch" (erreur 13). Pour éviter cela, assurez-vous d'utiliser la fonction Trim sur la propriété Value de la cellule ou de la plage, et non sur l'objet lui-même. Par exemple, au lieu de :
    Utilisez :

Caractères supprimés par la fonction Trim

Attention: La fonction Trim supprime les espaces en début et en fin de chaîne, mais elle ne supprime pas les autres caractères non imprimables. En VBA, les espaces sont représentés par le code ASCII 32.
Si vous souhaitez supprimer également d'autres caractères non imprimables en début et en fin de chaîne. Vous pouvez créer une fonction personnalisée ("UDF") pour le faire.

Par exemple, voici une fonction qui supprime les espaces et les caractères de tabulation (code ASCII 9):

Avec la fonction ci-dessus, vous supprimerez les espaces et les tabulations en début et en fin de chaîne. Vous pouvez l'adapter pour supprimer d'autres caractères non imprimables en fonction de vos besoins, en ajoutant des instructions Replace avec les codes ASCII correspondants.

Conclusion

La fonction Trim en VBA est un outil simple mais puissant pour nettoyer les chaînes de caractères en supprimant les espaces inutiles en début et en fin. Dans ce tutoriel, nous avons vu comment l'utiliser, comment l'intégrer dans vos projets VBA, ainsi que les erreurs potentielles lors de son utilisation. En gardant ces conseils à l'esprit, vous pourrez l'utiliser efficacement et éviter les erreurs courantes.

Pour aller plus loin en VBA…

Voici quelques autres articles & tutoriels VBA qui pourraient vous être utiles

Vous pouvez aussi voir le cours VBA en ligne – "VBA: Droit au but" qui est gratuit et se veut le plus efficace possible!

 

Laissez un commentaire

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

Commentaire sur “Fonction TRIM en VBA: Supprimez facilement les espaces inutiles”