Comment formater un nombre avec VBA dans Excel (3 méthodes)

  • Partage Ça
Hugh West

Mise en œuvre de Macro VBA est la méthode la plus efficace, la plus rapide et la plus sûre pour exécuter n'importe quelle opération dans Excel. Dans cet article, nous allons vous montrer comment formater le numéro dans Excel en utilisant VBA .

Télécharger le cahier d'exercices

Vous pouvez télécharger le cahier d'exercices Excel gratuit à partir d'ici.

Formater un nombre avec VBA.xlsm

3 méthodes pour formater des nombres dans Excel avec VBA

Regardez l'exemple suivant. Nous avons stocké les mêmes nombres dans les deux cas. Colonne B et C de sorte que lorsque nous formatons le nombre dans Colonne C vous saurez, grâce au B Colonne dans quel format le nombre était avant.

VBA pour formater des nombres d'un type à un autre dans Excel

Tout d'abord, sachons comment formater le numéro 12345 de Cellule C5 dans notre jeu de données donné avec VBA à Monnaie format.

Des pas :

  • Appuyez sur Alt + F11 sur votre clavier ou allez dans l'onglet Développeur -> ; Visual Basic pour ouvrir Éditeur Visual Basic .

  • Dans la fenêtre pop-up du code, dans la barre de menu, cliquez sur Insertion -> ; Module .

  • Copiez le code suivant et collez-le dans la fenêtre de code.
 Sub NumberFormat() Range("C5").NumberFormat = "#,##0.0" 'Ceci formatera le nombre 12345 en une devise End Sub 

Votre code est maintenant prêt à être exécuté.

  • Appuyez sur F5 sur votre clavier ou dans la barre de menu, sélectionnez Run -> ; Run Sub/UserForm Vous pouvez également cliquer sur le bouton petite icône Play dans la barre de sous-menu pour exécuter la macro.

Ce code formater le nombre 12345 en monnaie avec une valeur décimale.

Si vous voulez afficher le symbole de la devise dans la cellule, il suffit de mettre le symbole avant le code.

 Sub NumberFormat() Range("C6").NumberFormat = "$#,##0.0" 'Ceci formatera le nombre 12345 en devise avec le symbole $ End Sub 

Pour notre cas, nous avons utilisé le dollar ($) Vous pouvez utiliser le symbole monétaire de votre choix.

Ce code formatera le nombre en devise avec un indicateur dollar ($) symbole.

Vous pouvez également convertir ce format de nombre en de nombreux autres formats. Il suffit de suivre le code ci-dessous pour transformer le nombre dans le format que vous souhaitez.

 Sub NumberFormat() 'Numéro original 12345 Range("C5").NumberFormat = "#,##0.0" 'Ceci formatera le numéro dans une devise Range("C6").NumberFormat = "$#,##0.0" 'Ceci formatera le numéro dans une devise avec le symbole $ Range("C7").NumberFormat = "0.00%" 'Ceci formatera le numéro dans une valeur de pourcentage Range("C8").NumberFormat = "#,##.00 ;[red]-#,##.00" 'Ceciformatera le nombre en couleur rouge (formatage conditionnel) Range("C9").NumberFormat = "#?/ ?" 'Ceci formatera le nombre en fractions Range("C10").NumberFormat = "0#"" Kg"" 'Ceci formatera le nombre avec du texte Range("C11").NumberFormat = "#-#-#-#-#" 'Ceci formatera le nombre avec des séparateurs Range("C12").NumberFormat = "#,##0.00" 'Ceci formatera le nombre avec des séparateursnombre avec virgules et décimales si applicable Range("C13").NumberFormat = "#,##0" 'Ceci formatera le nombre en milliers avec virgules si applicable Range("C14").NumberFormat = "#,##0.00" 'Ceci formatera le nombre en millions Range("C15").NumberFormat = "dd-mmm-yyyy hh:mm AM/PM" 'Ceci formatera le nombre en date & ; time End Sub 

Macro VBA

Vue d'ensemble

Lire la suite : Format de nombres personnalisés Excel : conditions multiples

Macro pour formater une plage de nombres dans Excel

Nous avons vu comment changer le format des nombres pour une seule cellule, mais si vous voulez changer le format d'une plage de chiffres alors le VBA Cette fois-ci, au lieu de passer un seul numéro de référence de cellule entre les parenthèses de l'objet Range, vous devez passer l'ensemble de la gamme (comme ceci C5:C8) à l'intérieur des parenthèses.

 Sub NumberFormatRng() Range("C5:C8").NumberFormat = "$#,##0.0" End Sub 

Ce code permet de formater une plage spécifique de chiffres de votre ensemble de données dans Excel.

Lire la suite : Comment formater un nombre en millions dans Excel (6 façons)

Lectures similaires :

  • Excel - Arrondir à 2 décimales (avec calculatrice)
  • Comment Mettre entre parenthèses les nombres négatifs dans Excel
  • Comment formater un nombre en milliers K et en millions M dans Excel (4 façons)
  • Format de nombre personnalisé : Millions avec une décimale dans Excel (6 façons)
  • Comment changer le format des nombres de virgule à point dans Excel (5 façons)

3. Embed VBA pour convertir un nombre avec la fonction Format dans Excel

Vous pouvez également utiliser le Fonction de format dans Excel VBA pour convertir les chiffres. La macro pour le faire est la suivante ,

Des pas :

  • De la même manière que précédemment, ouvrez Éditeur Visual Basic de la Développeur et Insérer a Module dans la fenêtre de code.
  • Dans la fenêtre de code, copiez le code suivant et collez-le.
 Sub NumberFormatFunc() MsgBox Format(12345, "#,##0.00") End Sub 

Votre code est maintenant prêt à être exécuté.

Vous obtiendrez le numéro formaté dans la boîte de message.

Contenu connexe : Comment convertir un nombre en pourcentage dans Excel (3 façons rapides)

Conclusion

Cet article vous a montré comment formater le numéro dans Excel avec VBA J'espère que cet article vous a été très utile. N'hésitez pas à me demander si vous avez des questions sur le sujet.

Hugh West est un formateur et analyste Excel très expérimenté avec plus de 10 ans d'expérience dans l'industrie. Il est titulaire d'un baccalauréat en comptabilité et finance et d'une maîtrise en administration des affaires. Hugh a une passion pour l'enseignement et a développé une approche pédagogique unique qui est facile à suivre et à comprendre. Sa connaissance approfondie d'Excel a aidé des milliers d'étudiants et de professionnels du monde entier à améliorer leurs compétences et à exceller dans leur carrière. Grâce à son blog, Hugh partage ses connaissances avec le monde, offrant des tutoriels Excel gratuits et une formation en ligne pour aider les particuliers et les entreprises à atteindre leur plein potentiel.