OVH Cloud OVH Cloud

Probleme : CDec Decimal

8 réponses
Avatar
JGP_NoMail
Bonjour,

Sur mon win XP sous Excel 2003 cela fonctionne :

dim toto as variant
toto = Cdec( "&h12345676543210")

Probleme sur Win NT et VB6 j'ai l'erreur "Overflow"

D'ou viens le problème ?

JGP

8 réponses

Avatar
LE TROLL
Salut,

En enlevant les guillemets...

Dim y
y = CDec(&HB) ' 11d
MsgBox y
-------------

"JGP_NoMail" a écrit
dans le message de news: d3m5vm$46b$
Bonjour,

Sur mon win XP sous Excel 2003 cela fonctionne :

dim toto as variant
toto = Cdec( "&h12345676543210")

Probleme sur Win NT et VB6 j'ai l'erreur "Overflow"

D'ou viens le problème ?

JGP




Avatar
JGP_NoMail
Le 14/04/2005 21:03, LE TROLL a écrit :
Salut,


Bonjour,


En enlevant les guillemets...



Merci d'avoir repondu, mais non. avec la valeur : &H12345676543210 j'ai
erreur de compilation (cette valeur ne tiens pas dans un long, c'est
pour cdela que je veux convertir la chaine hexa en type decimale)

'SANS guillemets
y = CDec(&H123456)
=> Ok

y = CDec(&H12345676543210)
=> erreur de compilation

AVEC guillemets
y = CDec("&H123456")
=> Ok

y = CDec("&H12345676543210")
=> OK sous XP et Xl 2003
=> KO sous NT et VB6 : "Overflow"




Avatar
LE TROLL
Ben en mettant plus long que long, lol

Dim x As Double

----------


"JGP_NoMail" a écrit
dans le message de news: d3nqf2$se1$
Le 14/04/2005 21:03, LE TROLL a écrit :
Salut,


Bonjour,


En enlevant les guillemets...



Merci d'avoir repondu, mais non. avec la valeur :
&H12345676543210 j'ai erreur de compilation (cette valeur
ne tiens pas dans un long, c'est pour cdela que je veux
convertir la chaine hexa en type decimale)

'SANS guillemets
y = CDec(&H123456)
=> Ok

y = CDec(&H12345676543210)
=> erreur de compilation

AVEC guillemets
y = CDec("&H123456")
=> Ok

y = CDec("&H12345676543210")
=> OK sous XP et Xl 2003
=> KO sous NT et VB6 : "Overflow"






Avatar
JGP_NoMail
Le 15/04/2005 10:48, LE TROLL a écrit :
Ben en mettant plus long que long, lol

Dim x As Double



Ben non, marche pas toujours pareil.



----------


"JGP_NoMail" a écrit
dans le message de news: d3nqf2$se1$

Le 14/04/2005 21:03, LE TROLL a écrit :

Salut,



Bonjour,


En enlevant les guillemets...



Merci d'avoir repondu, mais non. avec la valeur :
&H12345676543210 j'ai erreur de compilation (cette valeur
ne tiens pas dans un long, c'est pour cdela que je veux
convertir la chaine hexa en type decimale)

'SANS guillemets
y = CDec(&H123456)
=> Ok

y = CDec(&H12345676543210)
=> erreur de compilation

AVEC guillemets
y = CDec("&H123456")
=> Ok

y = CDec("&H12345676543210")
=> OK sous XP et Xl 2003
=> KO sous NT et VB6 : "Overflow"








Avatar
LE TROLL
Tiens, là ça marche:

Sub Form_Load()
Dim x
Dim y As Double
y = "&h12345676543210"
x = CDec(y)
MsgBox y
End Sub

Mais je ne crois pas que tu puisses l'avoir en double, car
ça dépasse sans doute, peut être en string???
----------------

"JGP_NoMail" a écrit
dans le message de news: d3o0rh$12t$
Le 15/04/2005 10:48, LE TROLL a écrit :
Ben en mettant plus long que long, lol

Dim x As Double



Ben non, marche pas toujours pareil.



----------


"JGP_NoMail" a écrit
dans le message de news:
d3nqf2$se1$

Le 14/04/2005 21:03, LE TROLL a écrit :

Salut,



Bonjour,


En enlevant les guillemets...



Merci d'avoir repondu, mais non. avec la valeur :
&H12345676543210 j'ai erreur de compilation (cette valeur
ne tiens pas dans un long, c'est pour cdela que je veux
convertir la chaine hexa en type decimale)

'SANS guillemets
y = CDec(&H123456)
=> Ok

y = CDec(&H12345676543210)
=> erreur de compilation

AVEC guillemets
y = CDec("&H123456")
=> Ok

y = CDec("&H12345676543210")
=> OK sous XP et Xl 2003
=> KO sous NT et VB6 : "Overflow"









Avatar
LE TROLL
Tiens, là tu l'as en décimal:

Sub Form_Load()
Dim x
Dim y As Double
Dim z As String
y = "&h12345676543210"
x = CDec(y)
z = CDec(y)
MsgBox y & vbLf & z
End Sub
---------------------------


"JGP_NoMail" a écrit
dans le message de news: d3o0rh$12t$
Le 15/04/2005 10:48, LE TROLL a écrit :
Ben en mettant plus long que long, lol

Dim x As Double



Ben non, marche pas toujours pareil.



----------


"JGP_NoMail" a écrit
dans le message de news:
d3nqf2$se1$

Le 14/04/2005 21:03, LE TROLL a écrit :

Salut,



Bonjour,


En enlevant les guillemets...



Merci d'avoir repondu, mais non. avec la valeur :
&H12345676543210 j'ai erreur de compilation (cette valeur
ne tiens pas dans un long, c'est pour cdela que je veux
convertir la chaine hexa en type decimale)

'SANS guillemets
y = CDec(&H123456)
=> Ok

y = CDec(&H12345676543210)
=> erreur de compilation

AVEC guillemets
y = CDec("&H123456")
=> Ok

y = CDec("&H12345676543210")
=> OK sous XP et Xl 2003
=> KO sous NT et VB6 : "Overflow"









Avatar
JGP_NoMail
Le 15/04/2005 12:12, LE TROLL a écrit :
Tiens, là tu l'as en décimal:



Ben non

Sub Form_Load()
Dim x
Dim y As Double
Dim z As String
y = "&h12345676543210"



^^^ Erreur d'execution '6' : Dépassement de capacité (vb 6 & Excel 97)

x = CDec(y)
z = CDec(y)
MsgBox y & vbLf & z
End Sub




Et sur Excel 2003 sous XP pour y = "&H087654321" J'ai comme résultat
-2023406815 a la place de 2271560481 ( voir ci-dessous thread "CDec =
Buggué")

Sub Form_Load()
Dim x
Dim y As Double
Dim z As String
y = "&H087654321"
x = CDec(y)
z = CDec(y)
MsgBox y & vbLf & z
End Sub
Avatar
LE TROLL
Tiens, ci-joint le projet et la form en fichier...

Ça marche ou pas (tu as bien parlé de vb6) ???
---------

"JGP_NoMail" a écrit
dans le message de news: d4im5d$452$
Le 15/04/2005 12:12, LE TROLL a écrit :
Tiens, là tu l'as en décimal:



Ben non

Sub Form_Load()
Dim x
Dim y As Double
Dim z As String
y = "&h12345676543210"



^^^ Erreur d'execution '6' : Dépassement de capacité (vb
6 & Excel 97)

x = CDec(y)
z = CDec(y)
MsgBox y & vbLf & z
End Sub




Et sur Excel 2003 sous XP pour y = "&H087654321" J'ai
comme résultat
-2023406815 a la place de 2271560481 ( voir ci-dessous
thread "CDec > Buggué")

Sub Form_Load()
Dim x
Dim y As Double
Dim z As String
y = "&H087654321"
x = CDec(y)
z = CDec(y)
MsgBox y & vbLf & z
End Sub




begin 666 Projet1.vbp
M5'EP93U%>&4-"D9O<FT]1F]R;3$N9G)M#0I2969E<F5N8V4]*EQ'>S P,#(P
M-#,P+3 P,# M,# P,"U#,# P+3 P,# P,# P,# T-GTC,BXP(S C+BY<+BY<
M+BY<5TE.1$]74UQS>7-T96TS,EQS=&1O;&4R+G1L8B-/3$;VUA=&EO
M;@T*4W1A<G1U<#TB1F]R;3$B#0I#;VUM86YD,S(](B(-"DYA;64](E!R;VIE
M=#$B#0I(96QP0V]N=&5X=$E$/2(P(@T*0V]M<&%T:6)L94UO9&4](C B#0I-
M86IO<E9E<CTQ#0I-:6YO<E9E<CTP#0I2979I<VEO;E9E<CTP#0I!qO26YC
M<F5M96YT5F5R/3 -"E-E<G9E<E-U<'!O<G1&:6QE<STP#0I697)S:6]N0V]M
M<&%N>4YA;64](E!E<G-O(@T*0V]M<&EL871I;VY4>7!E/3 -"D]P=&EM:7IA
M=&EO;E1Y<&4], T*1F%V;W)096YT:75M4')O*'1M*3TP#0I#;V1E5FEE=T1E
M8G5G26YF;STP#0I.;T%L:6%S:6YG/3 -"D)O=6YD<T-H96-K/3 -"D]V97)F
M;&]W0VAE8VL], T*1FQ0;VEN=$-H96-K/3 -"D9$259#:&5C:STP#0I5;G)O
M=6YD961&4#TP#0I3=&%R=$UO9&4], T*56YA='1E;F1E9#TP#0I2971A:6YE
M9#TP#0I4:')E861097)/8FIE8W0], T*36%X3G5M8F5R3V94:')E861S/3$-
!"@``
`
end

begin 666 Projet1.vbw
M1F]R;3$@/2 T-"@L(#8W."$P+" L(#(R+" +" T.#$L
$($,-"@``
`
end