Constructeurs de texte et de formatage de texte

Les constructeurs de texte et de formatage se trouvent dans le menu Texte de l’éditeur VBA :

Travailler avec du texte est une partie importante de l’utilisation de VBA. Vous devez être en mesure de communiquer des informations aux utilisateurs, qu’il s’agisse d’une simple boîte de message, d’un UserForm ou d’un texte dans Excel.

Le String Builder convertit votre texte écrit en une chaîne de texte utilisable. Il interprète les sauts de ligne, les caractères spéciaux (guillemets) et utilise les variables du texte. (plus de recherche sur le web pour savoir comment taper un saut de ligne en VBA !)

Le générateur de formats vous permet de formater les nombres dans le format de votre choix (dates, devises, etc.).

Constructeur de chaînes de caractères

Tout d’abord, vous aurez besoin d’une procédure existante pour travailler :

string builder vba

Cette procédure produira cette MessageBox :

Remarquez que le nombre n’est pas formaté. Par ailleurs, que se passe-t-il si nous voulons inclure un message plus complet comprenant du texte ? C’est là que les constructeurs de chaînes et de formats s’avèrent utiles.

Naviguez ensuite vers le constructeur de chaînes de caractères

string builder menu

Commencez maintenant à taper votre texte. Remarquez que les sauts de ligne et les citations sont automatiquement traités dans la zone de prévisualisation.

preview text

En général, votre nombre sera stocké sous la forme d’une variable. Pour insérer une variable dans votre chaîne de caractères, déplacez le curseur à l’endroit du texte où vous souhaitez que la variable apparaisse.

Sélectionnez la variable dans le menu déroulant et cliquez sur Insérer.

insert variable

Cela ouvrira le générateur de format, dont nous parlerons plus loin. Après avoir défini le format, revenez au menu String Builder.

Dans la fenêtre de prévisualisation de la procédure, vous verrez la chaîne de texte que vous avez créée :

preview string procedure

Cliquez sur « Déplacer vers l’emplacement de la souris » pour déplacer votre code inséré ailleurs dans la procédure.

Insertion de la chaîne de caractères

Ce code entraînera une erreur parce que la chaîne de texte flotte au milieu de la procédure. Elle doit être déplacée dans une fonction de texte (comme MsgBox) ou ajoutée à une variable de type chaîne de caractères. Nous l’ajouterons à une variable de type chaîne en cochant la case située en haut du formulaire :

insert string var

Cliquez sur OK pour fermer le formulaire et modifiez votre code de procédure pour sortir la nouvelle variable de type chaîne et vous verrez la réponse formatée :

string builder output

Constructeur de format

Le générateur de format peut être ouvert seul :

open format builder

Il peut être ouvert à partir du String Builder en insérant une variable ou en cliquant sur edit :

open format builder

Sélectionnez le format souhaité et remarquez que la zone de prévisualisation affiche le texte du format et le code à formater :

format builder

Vous pouvez également utiliser l’outil Format personnalisé pour créer des formats plus complexes.

custom number formats

Remarque : en raison d’une mise à jour du framework, les formats personnalisés ne s’affichent pas toujours correctement. Nous avons tenté de gérer les scénarios les plus courants.

]

Commencez à automatiser Excel