Probleme avec userform basique

SERIEUXETCOOL

XLDnaute Occasionnel
Bonjour le Forum,

Pour placer le contexte, je dispose d'un userform extrêmement basique et qui me sert de test pour le moment. Cet userform regroupe 3 boutons d'options, une texbox et un bouton d'action pour valider et sortir.

J'ai déjà placé mes principales règles conditionnelles et la mise en forme sommaire. Cet userform fonctionne presque bien. J'aimerais régler les 3 derniers détails manquants à savoir :

-Je dois écrire un nombre entier ou décimal dans la textbox et uniquement des chiffres. Jusque la sa marche. Le souci est que même si j'entre une valeur décimale dans la textbox, ma variable qui garde cette valeur ne retient qu'un nombre entier. Donc par ex j'entre un entier dans la texbox sa fonctionne, mais si j'entre un nombre à virgule alors je garde l'entier naturel tronqué ou arrondi je ne sais plus.
Or moi je veux pouvoir entrer une valeur entière ou décimale

-Deuxièmement, le nombre de caractère dans ma textbox est limité à 5 de mémoire. C'est à dire que si j'écris dans la textbox le nombre "123456789" et si je fais afficher le contenu de la variable, alors on affiche seulement "12345".
Sa ne ma va pas du tout. J'aimerais m'affranchir de cette limitation.

-Dernière remarque, mon objectif final est de stoker dans une première variable la valeur parmi les 3 boutons d'options puis dans une seconde variable de stocker la valeur contenue dans la textbox. Je dois récupérer le contenu de ces 2 variables pour pouvoir m'en servir par la suite dans ma macro. Et je ne veux pas écrire le contenu des variable dans une feuille excel !!! Simplement stoker la valeur dans une variable que je peux utiliser par la suite dans mon programme de macro.
La question est simple, comment fait on pour transférer le contenu d'un userform entrer par l'utilisateur dans une macro. Comment se fait ce lien ?
Moi j'ai trouvé l'astuce d'utiliser une variable publique à tout le programme (Macro+Userform). Bonne ou mauvaise solution ? Il y a t'il plus simple ou plus efficace ?

Je place ci-joint mon classeur Excel (Version 2007)

Merci à ceux qui pourront m'aider sur ce thème plutôt simple pour la majorité d'entre vous.

André

PS : Un grand merci à Robert qui m'a permis de débuter avec cet userform
 

Pièces jointes

  • MACRO+USERFORM V0.xls
    55 KB · Affichages: 75

Robert

XLDnaute Barbatruc
Repose en paix
Re : Probleme avec userform basique

Bonjour le fil, bonjour le forum,

André, il existe dans VBE (Visual Basic Editor) la possibilité d'afficher la Fenêtre d'Exécution. Soit par le menu Affichage/Fenêtre d'Exécution soit par le raccourci clavier [Ctr]+[G]. Elle te permet de lire la valeur d'une variable au moment de l'éxécution de celui-ci grâce à la commande Debug.Print. Par exemple, Debug.Print Me.TextBox1.Value te donnera la valeur de la TextBox1 au moment du passage sur cette ligne. Tu peux écrire cette ligne dans plusieurs endroit de ton code et ainsi suivre l'évolution (les résultats sont écrits).

Tu peux aussi utiliser les espions par le menu Débogage/Ajouter un espion. Après tu fait avancer le code pas à pas (avec la touche F8) et tu vois l'évolution de la variable (les résultats sont affichés) dans la fenêtre Espions.

Ces deux outils te permettent un suivi et un contrôle de l'évolution de tes variables.
 

Discussions similaires

Statistiques des forums

Discussions
312 237
Messages
2 086 488
Membres
103 233
dernier inscrit
Ange.wil