Bonjour a tous,
J'aurais besoin d'un petit coup de pouce sur un probleme qui doit en turlupiner plus d'un: les parametres regionaux.
Explication du probleme:
J'ai cree un fichier excel qui est en partage sur un reseau interne. Pusieurs intervenants l'utilisent, avec des PC de parametres regionaux differents.
Dans ce fichier, il y a des saisies de nombres a virgule dans des formulaires, des importations de nombres a virgule depuis des tableaux, des copies de nombres a virgules... Il y a donc bcp de manipulations de nombres a virgule...
Hors la virgule, sous certains parametres regionaux, se transforme en point.
Jusqu'ici, je m'en sortait avec Replace(Variable;".";",")
Cela fonctionne generalement car j'ai l'impression que vba utilise la virgule comme separateur decimal.
Mais je viens de me rendre compte que parfois(sur certains postes), VBA ce n'est pas le cas, et cette mise en forme (Replace(Variable;".";",")) revient a tout simplement a transformer la variable en entier (Integer).
Y a t il un moyen de conditionner cette "mise en forme" suivant les parametres regionaux de l'ordinateur?
Est t'il possible de definir et de forcer dans le code VBA les parametres regionaux qui feront reference?
J'ai cherche, en vain, une solution. Peut etre pouvez vous m'aider?
Merci de m'avoir lu jusqu'ici!
J'aurais besoin d'un petit coup de pouce sur un probleme qui doit en turlupiner plus d'un: les parametres regionaux.
Explication du probleme:
J'ai cree un fichier excel qui est en partage sur un reseau interne. Pusieurs intervenants l'utilisent, avec des PC de parametres regionaux differents.
Dans ce fichier, il y a des saisies de nombres a virgule dans des formulaires, des importations de nombres a virgule depuis des tableaux, des copies de nombres a virgules... Il y a donc bcp de manipulations de nombres a virgule...
Hors la virgule, sous certains parametres regionaux, se transforme en point.
Jusqu'ici, je m'en sortait avec Replace(Variable;".";",")
Cela fonctionne generalement car j'ai l'impression que vba utilise la virgule comme separateur decimal.
Mais je viens de me rendre compte que parfois(sur certains postes), VBA ce n'est pas le cas, et cette mise en forme (Replace(Variable;".";",")) revient a tout simplement a transformer la variable en entier (Integer).
Y a t il un moyen de conditionner cette "mise en forme" suivant les parametres regionaux de l'ordinateur?
Est t'il possible de definir et de forcer dans le code VBA les parametres regionaux qui feront reference?
J'ai cherche, en vain, une solution. Peut etre pouvez vous m'aider?
Merci de m'avoir lu jusqu'ici!