Bonjour,
J'ai un soucis avec la fonction val.
J'ai de nombreux endroits où je dois déterminer si une chaine de caractère est un nombre ou une vrai chaine, et si c'est un nombre, je dois la convertir.
J'utilisais donc jusqu'à présent la fonction Val().
Exemple
Le problème est qu'un des utilisateurs vient d'utiliser une chaine nommée "XC" et que la fonction Val me renvoie 0 comme code erreur et 12 dans le variable "entier".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Val(Chaine, Entier, Erreur); if Erreur = 0 then //Traitement de la valeur "entier" else //Traitement de la valeur "chaine"
Après recherche, je me suis rendu compte que "X" est le préfixe pour les nombres hexadécimaux. Et que du coup, il considère "XC" comme la valeur 12 en hexadécimal.
J'ai 2000 endroits où la fonction Val est appelée...
Plutôt que de redéfinir une nouvelle fonction Val et de le changer partout, n'y aurait-il pas un moyen de désactiver le préfixe Hexa dans la fonction Val ?
Par exemple avec une directive de compilation ?
Merci d'avance pour vos réponses.
Partager