Problème VBA : Transformation non prévue d'un nombre décimal en entier

gperrotm

XLDnaute Nouveau
Bonjour,

Je me suis mis depuis quelques mois à la programmation VBA pour le travail et en tâtonnant et en écumant un peu les forums j'ai réussi à trouver toutes les réponses à mes questions. Mais depuis hier, je suis tombé sur un bug que je ne comprend absolument pas.

J'ai une macro qui reporte tout simplement le nombre d'une case dans un autre. Donc j'ai :

Cells(i,5).value = atm où atm = Cells(i,3).value

Mon problème c'est que sur la ligne 2 quand j'ai Cells(i,3) = 2236,8756, j’obtiens Cells(i,5) = 22368756

La virgule a donc disparue comme par magie et mon nombre décimal s'est transformé en entier !
En plus ce qui est étrange c'est que les autres lignes de ma boucle fonctionnent parfaitement. Le format de toutes les cellules est le même (nombre avec 2 décimales).

Je vous remercie par avance pour vos lumières parce que là, je sèche ...

Gaëtan
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Problème VBA : Transformation non prévue d'un nombre décimal en entier

Bonjour Gaëtan et bienvenu, bonjour le forum,

Comment as-tu déclaré ta variable atm ? Elle devrait être déclarée de type Double :

Code:
Dim atm As Double
 

gperrotm

XLDnaute Nouveau
Re : Problème VBA : Transformation non prévue d'un nombre décimal en entier

Bonjour Robert,

Merci pour ta réponse et ton acceuil.
Ma variable est déclaré en String parce qu'il y a des cas où elle doit afficher du texte. Même en String, il n'y a aucune raison pour qu'Excel modifie le nombre en enlevant la virgule .... :(
 

Discussions similaires

Réponses
7
Affichages
430

Statistiques des forums

Discussions
312 206
Messages
2 086 203
Membres
103 157
dernier inscrit
youma