Format des variables sous VB - VB/VBA/VBS - Programmation
Marsh Posté le 21-05-2008 à 13:20:06
heu tu peux affecter un formatage à une cellule excel (définitivement)
mais pas à une variable VB.
Marsh Posté le 21-05-2008 à 13:24:09
Xxxaaavvv a écrit : heu tu peux affecter un formatage à une cellule excel (définitivement) |
Alors y a-t-il une méthode pour que dans la macro, le point du clavier numérique devienne une virgule à chaque fois que l'on clique dessus.
Marsh Posté le 21-05-2008 à 13:26:58
salut
|
sinon concernant la saisie dans une UserForm t'inspirer de http://cjoint.com/?fvnKbRVqtB particulièrement saisie décimale ou un seul séparateur décimal est permis, et ou la virgule se substitue au point si on utilise le pavé numérique
Marsh Posté le 21-05-2008 à 13:34:17
En fait, dans ma boîte de dialogue, il y a une variable qui est la somme des REVENUS (idem pour DEPENSE).
Avec le code que tu m'as donné avant-hier, le total se recalcule automatiquement dès que je modifie REVENUS ou DEPENSES...
Le hic, c'est que si je tape 45.25 (avec le point du clavier num), le calcul ne se fait plus...
Exemple :
J'ai 0 et 0 dans les deux variables REVENUS et DEPENSES. Le total est donc de 0... logique.
Dès que je saisis, un montant dans l'une ou l'autre des variables, le total changent dynamiquement... super...
Si je saisis 100 (sans centimes) dans REVENUS, le total passe à... 100,00... avec une virgule.
Si je vais dans DEPENSES et que je saisisse 75.64, le total change jusqu'au 5 mais se remet à son état avant saisie lorsque je tape le point du clavier num... (avec la virgule du clavier alpha, ça fonctionne jusqu'au bout)...
J'espère que c'est clair mon petit texte ???
Ou alors, il faut que je formate tout avec des points...
Les variables sont formatées avec Format(..., "##,##0.00" )
Marsh Posté le 21-05-2008 à 13:42:49
c'est un autre problème
en fait la conversion de chainde caractère ne passe pas avec le "."
(il prend zero a la place...)
c'est la fonction que je t'ai fait rajouter qu'il faut adapter...
je te la reposte assez vite.
Marsh Posté le 21-05-2008 à 13:49:33
kiki29 a écrit : salut
|
Effectivement, dans ton exemple, lorsque j'exécute la macro et que je saisis dans le champ "Décimal", lorsque je tape des nombres avec le clavier, le point devient illico une virgule... c'est ce qu'il me faut...
J'ai donc insérer le code correspond dans ma Userform :
Code :
|
et j'ai remplacé TextBox1 par le nom de ma variable... mais ça ne marche pas...
j'ai le message : "Erreur d'exécution '5' Argument ou appel de procédure incorrect" et le débogueur surligne "If KeyAscii = Asc(Point) Then "
Qu'est-ce qui ne va pas ?
Marsh Posté le 21-05-2008 à 13:51:39
tu peux aussi remplacer ma fonction par cette nouvelle :
Code :
|
ce qui te permet de saisir des point ou des virgules indifférement
(le point est converti en virgule de manière interne)
Marsh Posté le 21-05-2008 à 13:55:33
Xxxaaavvv a écrit : tu peux aussi remplacer ma fonction par cette nouvelle :
|
C'est bizarre car maintenant le total automatique ne se fait plus...
J'vais péter un câble...
Marsh Posté le 21-05-2008 à 14:09:50
ReplyMarsh Posté le 21-05-2008 à 14:12:36
Xxxaaavvv a écrit : me suis ptetre tromper, je vérifierai demain, la j'ai plus le temps désolé |
OK !
Merci encore pour ton aide...
Marsh Posté le 21-05-2008 à 13:05:02
Je relance un nouveau topic car j'ai réellement beaucoup de mal à formater mes variables.
Je récapitule ce que je suis en train de créer.
J'ai une feuille de calcul dans laquelle j'ai un tableau avec 70 lignes (70 entités) et quelques 40 colonnes (REVENUS et DEPENSES).
Exemple :
Revenus Dépenses
Entité1 15 452.25 8 451.75
Entité2 10 000.45 6 215.03
...
J'ai créé une boîte de dialogue pour chaque intervenant saisisse les données relatives aux entités qu'il gère. L'intervenant choisit dans une liste déroulante l'entité, la macro récupère les montants REVENUS et DEPENSES éventuellement saisis auparavant et les mets dans les variables REVENUS et DEPENSES... qui sont formatées ensuite avec 2 décimales.
Je teste actuellement celle-ci et je n'ai pas trop de soucis pour entrer choisir l'entité, entrer les montants (REVENUS et DEPENSES).
Par contre, comment formater une bonne fois pour toutes les variables REVENUS et DEPENSES ?
Car lorsque je modifie REVENUS ou DEPENSES, le montant - lorsqu'il est entier - n'apparaît pas avec les centimes (exemple pour 4 000, il m'affiche 4 000 et non 4 000,00).
Et lorsque je saisis un chiffre avec des décimales, il faut utiliser la virgule du clavier ALPHA et non le point du clavier NUM...
Alors je me demande s'il n'y a pas une manière définitive pour que toutes les variables soient au format avec 2 décimales, à la création comme à la modification...
Merci de votre aide...
---------------
iMac 4Ghz (fin 2015) RAM 16Go SSD 256Go SSD 2To