Dépassement capacité [Résolu]

mJuJu 56 Messages postés jeudi 20 octobre 2005Date d'inscription 27 mai 2014 Dernière intervention - 30 mai 2008 à 00:33 - Dernière réponse : PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention
- 30 mai 2008 à 01:43
Bonjour à tous.

mon problème est le suivant : je déclare 2 variables de type double

Dim   dFact         as Double
Dim   Retenue     as Double

Et mon code VB6 est :

dFact = 2163728899#
Retenue = dFact \ 10000000#     

et sur la 2ème instruction j'obtiens l'erreur d'exécution '6'  = Dépassement de capacité !!   Pourquoi donc ?

Merci de vos réponses.

     
Afficher la suite 

4 réponses

Répondre au sujet
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 30 mai 2008 à 01:43
+3
Utile
... j'ai parlé de "entier", tout comme Galain a parlé de "[alink_6.Click%28%29 Byte], [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de PCPT
cs_Galain 1270 Messages postés mardi 11 novembre 2003Date d'inscription 24 juillet 2013 Dernière intervention - 30 mai 2008 à 01:08
0
Utile
[javascript:alink_6.Click() Byte],
<object id= "alink_7" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_7.Click() Integer] ou
<object id="alink_8" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_8.Click() Long].  <-------- C'EST LA QU'EST LE PROBLEME


En général, le
<object id="alink_9" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_9.Click() type de données] de l'argument
result est Byte , un variant de type Byte, Integer,
un variant de type Integer, Long ou un variant de type
Long, que l'argument result soit ou non un entier. La partie
décimale est tronquée. Cependant, si une
<object id ="alink_10" type= "application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_10.Click() expression] est
<object id="alink_11" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_11.Click() Null], l'argument result est
Null . Toute expression
<object id ="alink_12" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_12.Click() Empty] est traitée comme si elle avait la
valeur 0.





GRENIER Alain
Commenter la réponse de cs_Galain
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 30 mai 2008 à 01:15
0
Utile
salut,

si tu récupères un entier, pourquoi déclarer Retenue as double?

Attention : dFact \ 10000000#  <> dFact / 10000000#   

donc selon tes besoins :
Retenue = dFact / 10000000#

ou :
Retenue = Int(dFact / 10000000#)

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Commenter la réponse de PCPT
mJuJu 56 Messages postés jeudi 20 octobre 2005Date d'inscription 27 mai 2014 Dernière intervention - 30 mai 2008 à 01:31
0
Utile
Si j'ai bien compris, avant la division, l'expression est convertie au maximum dans un long. Que se passet-t-il quand il y a des décimales ? Et enfin dans mon cas, comment puis-je m'en sortir ?

Retenue peut être effectivement en Long. Integer est trop juste.
Commenter la réponse de mJuJu

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.