Reconnaître les nombres décimaux ou entiers

C

Chris-57

Guest
Bonjour à tous,

Voilà ce que je cherche :
Dans une plage donnée contenant des formules simples (additions - soustractions...), je souhaite que lorsque :
- le résultat est un nombre entier, que le format soit du type 0
- le résultat est un nombre décimal à un chiffre après la virgule, que le format passe automatiquement à 0,0
- le résultat est un nombre décimal à X chiffres après la virgule, que le format passe automatiquement à 0,00

J'ai tenté avec un évenement woorbook_change, en y intégrant une boucle du type :
For each X in [plage]

mais comme la plage est grande, ça fait ramer le classeur.

Existe t'il une autre solution ??
 
C

Chris-57

Guest
J'ai oublié de préciser :
si je met les cellules en format Standard, ça fonctionne. Mais si le résultat compte x chiffres après la virgule, elles seront affichées.
Je voudrais que le nombre de chiffres après la virgule ne dépasse jamais 2 valeurs.
 
J

jmps

Guest
Bonjour Chris, Bonjour Ândré,

A mettre dans l'évènement worksheet_change :

If Int(Target.Value) <> Target.Value Then
&nbsp;&nbsp;Target.NumberFormat = "#.??"
Else
&nbsp;&nbsp;Target.NumberFormat = "# ###" ' Ou le format que tu veux.
End If


J'espère que ça te conviendra.

Bonne fin de journée.

José
 

Discussions similaires

Réponses
15
Affichages
864

Statistiques des forums

Discussions
314 203
Messages
2 107 176
Membres
109 766
dernier inscrit
pleutre