Téléphone : 07.51.62.01.40 | Mail : contact@morpheus-formation.fr
Aujourd'hui, nous allons explorer en profondeur la fonction FORMAT
en VBA.
La fonction FORMAT
sur VBA Excel est utilisée pour convertir des expressions en chaînes de caractères formatées selon vos besoins.
Que ce soit pour afficher des dates, des heures, des nombres ou des devises, FORMAT
vous offre une grande flexibilité pour personnaliser la présentation de vos données.
La syntaxe de la fonction FORMAT
est la suivante :
Format(expression, [format])
Paramètres
Argument | Description |
---|---|
expression (obligatoire) | La valeur que vous souhaitez formater (peut être une date, un nombre, etc.). |
format (facultatif) | Une chaîne de format qui spécifie le format à appliquer à l'expression. |
Valeurs de Retour
La fonction FORMAT
renvoie une chaîne de caractères représentant la valeur formatée de l'expression.
Exemple d’utilisation FONCTION FORMAT VBA
Dans cet exemple, nous allons formater une date pour qu'elle soit affichée dans différents formats.
Exemple 1 : Formatage de dates
Sub FormatageDate()
Dim maDate As Date
maDate = #5/28/2024#
' Formatage par défaut
MsgBox Format(maDate, "dd/mm/yyyy") ' Renvoie : 28/05/2024
' Formatage complet
MsgBox Format(maDate, "dddd, mmmm d, yyyy") ' Renvoie : Tuesday, May 28, 2024
' Formatage personnalisé
MsgBox Format(maDate, "yy-mm-dd") ' Renvoie : 24-05-28
End Sub
Explication : La fonction FORMAT
permet de convertir une date en une chaîne de caractères formatée selon le modèle spécifié. Par exemple, "dd/mm/yyyy" pour une représentation de date standard ou "dddd, mmmm d, yyyy" pour un format complet avec le jour de la semaine.
Exemple 2 : Formatage de nombres
Ici, nous allons voir comment formater des nombres pour les afficher avec des séparateurs de milliers, des décimales et des signes monétaires.
Sub FormatageNombre()
Dim monNombre As Double
monNombre = 1234567.89
' Formatage avec des séparateurs de milliers
MsgBox Format(monNombre, "#,##0.00") ' Renvoie : 1,234,567.89
' Formatage monétaire
MsgBox Format(monNombre, "Currency") ' Renvoie : $1,234,567.89 (en fonction des paramètres régionaux)
' Formatage pourcentage
MsgBox Format(monNombre, "0.00%") ' Renvoie : 123456789.00%
End Sub
Explication : Avec FORMAT
, vous pouvez facilement ajouter des séparateurs de milliers et des décimales à vos nombres, ou les convertir en formats monétaires ou en pourcentages, ce qui est très utile pour la présentation des données financières.
Exemple 3 : Formatage de texte
Dans cet exemple, nous allons formater des chaînes de caractères pour les présenter dans différentes mises en forme.
Sub FormatageTexte()
Dim monTexte As String
monTexte = "excel"
' Mise en majuscules
MsgBox Format(monTexte, ">") ' Renvoie : EXCEL
' Mise en minuscules
MsgBox Format(monTexte, "<") ' Renvoie : excel
' Premier caractère en majuscule
MsgBox Format(monTexte, ">") & LCase(Mid(monTexte, 2)) ' Renvoie : Excel
End Sub
Explication : La fonction FORMAT
peut également être utilisée pour changer la casse des chaînes de caractères. En combinant FORMAT
avec d'autres fonctions VBA comme LCase
et Mid
, vous pouvez obtenir des mises en forme plus complexes.
Nos meilleures pratiques
Voici, d'après-moi, les meilleures pratiques de la fonction FORMAT sur VBA :
Pratique | Description |
---|---|
Utiliser des formats standards | Utilisez des formats standards comme "Currency", "Percent", "Short Date", etc., pour une lisibilité accrue. |
Adapter le format aux paramètres régionaux | Assurez-vous que les formats monétaires et de dates sont adaptés aux paramètres régionaux de l'utilisateur. |
Combiner des formats personnalisés avec du texte | Utilisez FORMAT pour insérer des valeurs formatées dans des chaînes de texte pour des messages ou des rapports clairs. |
Employer des formats de nombre adaptés aux besoins financiers | Utilisez des séparateurs de milliers et des décimales pour les valeurs financières, comme "#,##0.00" . |
Vérifier les résultats des formats personnalisés | Testez les formats personnalisés pour garantir qu'ils produisent les résultats attendus dans différents scénarios. |
Utiliser des noms de formats clairs et descriptifs | Choisissez des noms de formats qui décrivent clairement leur fonction, comme "DateLong" ou "NombreMonétaire". |
Les erreurs à éviter
Voici, d'après-moi, les erreurs à éviter de la fonction FORMAT VBA :
Erreur | Description |
---|---|
Omettre le format | Ne pas spécifier de format peut entraîner des résultats inattendus ou peu lisibles. |
Ignorer les paramètres régionaux | Utiliser des formats non adaptés aux paramètres régionaux de l'utilisateur peut rendre les données incompréhensibles. |
Utiliser des formats inappropriés pour les données | Appliquer des formats numériques à des chaînes de texte ou vice versa peut produire des erreurs ou des résultats étranges. |
Ne pas tester les formats personnalisés | Les formats personnalisés peuvent parfois ne pas fonctionner comme prévu, il est donc essentiel de les tester avant utilisation. |
Confondre les comparaisons de casse dans le texte | Lors de la mise en majuscules ou en minuscules, assurez-vous de ne pas mélanger les comparaisons sensibles et insensibles à la casse. |
Oublier de gérer les erreurs pour les valeurs nulles ou non valides | Ne pas gérer les erreurs lorsque les valeurs sont nulles ou non valides peut provoquer des plantages ou des comportements imprévus. |
FAQ : fonction FORMAT EXCEL VBA
Formation FORMAT VBA Excel
Vous êtes à l'aise avec Excel et vous souhaitez passer à un niveau supérieur ? Il est temps d'apprendre le langage de programmation VBA pour créer de véritables applications dans Excel ! Explorez notre programme de formation Excel VBA pour apprendre à créer des macros et automatiser vos classeurs.
Que vous soyez une entreprise ou un particulier, nous avons conçu une formation Macros VBA Excel adaptée à vos besoins spécifiques. Nous vous offrons la flexibilité de choisir entre des formations à distance ou en présentiel, selon vos préférences et contraintes.
En choisissant notre formation VBA Excel (macros), vous pourrez également passer la certification TOSA, une référence en matière de certification bureautique.
Les autres fonctions VBA TYPE
Fonction InStr VBA Excel
FONCTION CHR VBA Excel
FONCTION REPLACE VBA EXCEL
Découvrez toutes les fonctions dans Excel VBA ici.