[VBA] - Format avec nombre décimal variable

Bonjour,

Je travaille actuellement sur l'intégration, via une procédure, d'une validation de données, afin de "sécuriser" la saisie future sur la feuille concernée. Aucun soucis pour mettre en place la validation, mais ça se gâte un peu concernant le format.

Savez-vous comment je peux formater une cellule dont le nombre de décimal est variable ?

Variables :

Rge (range) = plage traitée dans le cadre d'une boucle

NbDVal (string) = valeur qui correspond au nombre autorisé de décimal

J'avais pensé à une solution du type :

Rge.NumberFormat = "0." & NbDVal

Mais je ne vois pas comment transformer (sans créer "50" IF) NbDVal, qui est une valeur, en chaîne ; c-à-d :

  • si NbDVal = 2, alors NbDVal = "00" (chaîne de 2 zéros)
  • si NbDVal = 3, alors NbDVal = "000" (chaîne de 3 zéros)
  • etc...

Espérant avoir été compréhensible, je suis ouvert à toutes les solutions.

Merci par avance,

Towelie

bonjour,

as-tu pensé à la fonction string() en vba

NbDval=5
fo="0." & string(NbDVal,"0") 'fo contient la chaîne "0.00000"

Bonjour h2so4,

Je ne connaissais pas cette fonction, du moins son usage précis.

Simple et efficace, c'est parfait de mon côté.

Merci beaucoup,

Towelie

Rechercher des sujets similaires à "vba format nombre decimal variable"