VBA excel Comment ne pas supprimer les zéros

Résolu/Fermé
SYBY Messages postés 2 Date d'inscription samedi 9 octobre 2010 Statut Membre Dernière intervention 10 octobre 2010 - 9 oct. 2010 à 18:09
SYBY Messages postés 2 Date d'inscription samedi 9 octobre 2010 Statut Membre Dernière intervention 10 octobre 2010 - 10 oct. 2010 à 11:48
Bonjour,

Comment obtenir dans une variable, un montant saisi dans une cellule(personalisée "0000,00") sans perte des zéros significatifs et non significatifs.

Exemples:
- un montant saisi "0002,10" devient dans une variable "2,1"
- un montant saisi "0004,00" devient dans une variable "4"

le code dans la macro est :

Dim Mt string * 7

Mt = Cells(19, 5).Value

Msgbox mt


Avec mes remerciements.

Cordialement.
A voir également:

2 réponses

m@rina Messages postés 21229 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 6 janvier 2025 11 374
Modifié par m@rina le 9/10/2010 à 23:01
Bonsoir,

Il faut que tu imposes le format dans ton code. Et ta variable ce n'est pas du String.

Dim Mt as Integer 
Mt = Format(Cells(19, 5), "0,000.00")

Attention de bien le mettre en format américain dans la macro, même si tu es en format français.

m@rina

- "Sur le forum bureautique, on pose des questions concernant la bureautique..."
- "Ah bon ???"
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 249
10 oct. 2010 à 01:31
Bonsoir tout le monde,

Juste une modif à la proposition de m@rina :
dim Mt as double
(ou single ou currency)

vu que c'est un nombre décimal

eric
0
SYBY Messages postés 2 Date d'inscription samedi 9 octobre 2010 Statut Membre Dernière intervention 10 octobre 2010
10 oct. 2010 à 11:48
Bonjour,

Merci à M@rina et Eriic, aux réponses que vous m'apportez et qui m'ont permises une adaptation à mon besoin !...


Dim Mt As String

Mt = Format(Cells(19, 5).Value, "0000.00")


Exemple: la cellule contient "00012,30" et j'obtiens dans "Mt" le même contenu

Cordialement.
0