VBA n'aime pas les 0,5

Myhnowine Messages postés 4 Date d'inscription vendredi 13 juillet 2012 Statut Membre Dernière intervention 13 juillet 2012 - 13 juil. 2012 à 08:00
Myhnowine Messages postés 4 Date d'inscription vendredi 13 juillet 2012 Statut Membre Dernière intervention 13 juillet 2012 - 13 juil. 2012 à 10:14
Bonjour à tous,

J'ai un petit problème avec les ",5" dans un mini programme VBA que je développe :
suite à un calcul dans une feuille excel, je renvoie le résultat vers une textbox et vers une cellule d'une autre feuille. Ce résultat peut être sous la forme "12,5".

La textbox prend bien la valeur "12,5" à l'inscription, mais pas la cellule de la deuxième feuille qui inscrit juste "12".
Comment puis-je faire en sorte que la cellule inscrive aussi "12,5" ? Parce que dans le reste de mon programme, cette valeur est utilisée pour d'autres calculs, ce qui fausse tout ...

Merci de votre aide, et si je suis pas assez claire, n'hésitez pas à me le dire.

6 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 209
13 juil. 2012 à 08:04
Bonjour,
Je t'invite à lire cette très récente discussion : Tapez le texte de l'url ici.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0
Myhnowine Messages postés 4 Date d'inscription vendredi 13 juillet 2012 Statut Membre Dernière intervention 13 juillet 2012
13 juil. 2012 à 08:18
Merci pour cette réponse vive comme l'éclair.
Ça ne fonctionne toujours pas puisque l'inscription du résultat dans la cellule de destination est "12,00" et non pas "12,5", mais ça avance, j'ai des chiffres après la virgule !
Je vais essayer de chercher d'où ça peut provenir.
0
Myhnowine Messages postés 4 Date d'inscription vendredi 13 juillet 2012 Statut Membre Dernière intervention 13 juillet 2012
13 juil. 2012 à 08:22
peut être de là :
voici le code qui me permet d'inscrire le résultat dans la cellule de destination :
(txtdet étant la textbox dans laquelle est finalement écrit le "12,5")
With Sheets("feuil2")
.Range("G" & Me.cbonom.ListIndex + 2) = IIf(IsNumeric(Me.txtdet), Val(Me.txtdet), Me.txtdet)

Peut être que le format "IsNumeric" ou "Val" ne convient pas ?
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 209
13 juil. 2012 à 09:54
As-tu essayé tout simplement :
sheets("feuil2").value = txtdet.value 

comme je le suggérais dans la discussion vers laquelle je t'ai dirigée ??
Ceci indépendamment du contrôle de la validité de la saisie, qui est un autre aspect !
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 6
13 juil. 2012 à 09:58
Bonjour,

Retounes à la discussion citée plus haut.
Il semble que tu n' as pas tout compris.



[] Ce qui va sans dire. va mieux en le disant.
0
Myhnowine Messages postés 4 Date d'inscription vendredi 13 juillet 2012 Statut Membre Dernière intervention 13 juillet 2012
13 juil. 2012 à 10:14
Ben non, mais oui...
Je pense que j'avais trop le nez dedans pour ne pas simplement écrire :
With Sheets("feuil2")
.Range("G" & Me.cbonom.ListIndex + 2) = Sheets("tmp").Range("C5")

Du coup j'ai vraiment honte d'avoir posé la question... Mais bon, comme quoi, un regard extérieur est souvent nécessaire.
Merci d'avoir répondu.
0
Rejoignez-nous