Nombres négatif

Malokoxis Messages postés 83 Date d'inscription lundi 3 janvier 2011 Statut Membre Dernière intervention 22 février 2021 - Modifié le 24 janv. 2018 à 14:55
Malokoxis Messages postés 83 Date d'inscription lundi 3 janvier 2011 Statut Membre Dernière intervention 22 février 2021 - 24 janv. 2018 à 18:46
Bonjour,

Je fais une application qui traite des coordonnées GPS au format décimal.
J'ai essayer de passer ces valeurs en Double avec la fonction val :
valLatLong = Val(LongNO.Text)
If MSFlexGrid1.TextMatrix(i, 1) < valLatLong Or MSFlexGrid1.TextMatrix(i, 1) > LongNE.Text Then


Ces coordonnées peuvent parfois être négatives, et dans ce cas mon application ne les traite pas...
Je ne comprends pas pourquoi, pourriez vous m'aidez svp ?

Merci.

1 réponse

vb95 Messages postés 3418 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 31 mai 2023 165
24 janv. 2018 à 18:16
Bonjour
Vb 6 est loin pour moi mais de souvenir :

1) Val ne passe pas les valeurs en Double : il donne à une variable d'un type numérique la valeur contenue dans une chaine de caractères
Pour que la variable soit un double il faut la déclarer ainsi
Dim valLatLong as Double = Val(LongNO.Text)


2) De plus MSFlexGrid1.TextMatrix(i, 1) contient une chaine de caractères et non une valeur numérique .
La syntaxe correcte serait
if Cdbl(MSFlexGrid1.TextMatrix(i, 1).Text)  < valLatLong  

Cdbl convertit une variable en type Double

Mets aussi dans les propriétés de ton projet Option Explicit sur On et Option Strict sur On
Ceci oblige à déclarer toutes les variables et évitent les liaisons tardives

0
Malokoxis Messages postés 83 Date d'inscription lundi 3 janvier 2011 Statut Membre Dernière intervention 22 février 2021 2
24 janv. 2018 à 18:46
Merci pour la fonction Cdbl, je vais essayer.
0