Comparaison avec une variable de type double

cs_javotte Messages postés 42 Date d'inscription mardi 4 mai 2004 Statut Membre Dernière intervention 13 décembre 2006 - 11 mai 2004 à 15:01
cs_labout Messages postés 1356 Date d'inscription samedi 8 décembre 2001 Statut Membre Dernière intervention 23 octobre 2006 - 11 mai 2004 à 15:21
je n'arrive pas à comparer une variable avec un réel.
la variable contient un réel comme par exemple 0.00008 et la comparaison avec 0.1 ne marche pas.

(rs_cmr![concentration_masse]) >= "0,1")

ça ne serait pas à cause de la séparation par un point et non par une virgule?

mais avec une virgule il y a une erreur de synthaxe...

une idée?

4 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
11 mai 2004 à 15:18
Essaye comme cela :

rs_cmr![concentration_masse]) >= 0.1

Christophe R.
0
cs_labout Messages postés 1356 Date d'inscription samedi 8 décembre 2001 Statut Membre Dernière intervention 23 octobre 2006 8
11 mai 2004 à 15:20
labout

Si il faut tester quel est le séparateur décimal.
Dépend de la config

exemple

if SepDecimele="," then
(rs_cmr![concentration_masse]) >= "0,1")
else
(rs_cmr![concentration_masse]) >= "0.1")

endif

Fonction SepDecimale as string
dim nombre as string
nombre=str(3/2)
if instr(nombre,",")> 0 then
SepDecimale="."
else
SepDecimale="."
endif
0
HFanny Messages postés 699 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 13 mai 2011 20
11 mai 2004 à 15:20
Bonjour,

les double, en VB ont une séparation avec un point.
et quand tu compares une valeur avec un double, le double ne doit pas être mis entre guillemets.

rs_cmr![concentration_masse] >= 0.1

Si ça ne marche pas avec cela, convertis le champs en double (normalement tu n'as pas besoin) :
CDbl(rs_cmr![concentration_masse]) >= 0.1

Fanny
0
cs_labout Messages postés 1356 Date d'inscription samedi 8 décembre 2001 Statut Membre Dernière intervention 23 octobre 2006 8
11 mai 2004 à 15:21
labout

Si il faut tester quel est le séparateur décimal.
Dépend de la config

exemple

if SepDecimale="," then
.. (rs_cmr![concentration_masse]) >= "0,1")
else
.. (rs_cmr![concentration_masse]) >= "0.1")

endif

Fonction SepDecimale as string
dim nombre as string
nombre=str(3/2)
if instr(nombre,",")> 0 then
SepDecimale="."
else
SepDecimale="."
endif
0
Rejoignez-nous