Dans un UserForm, effectuer un calcul à partir de CheckBox
Bonjour à tous,
Devellopez.com : club des professionnels de l'informatique ... moi qui suis grand débutant, j'espère ne pas m'immiscer dans un lieu d'un trop haut niveau pour moi ... Nous verrons.
Voici mon problème. Dans un UserForm j'ai créé un Frame dans celui-ci j'ai placé 3 CheckBox. L'intitulé de chaque CheckBox est : + 10 pour la première, + 20 et + 30 pour les deux autres. Dans un Label j'ai inscrit : Total = 100.
Je souhaite que, simplement en cliquant sur une CheckBox, l'intitulé du Label s'incrémente de la valeur indiquée (en plus ou en moins suivant que la CheckBox est ou non cochée). Un CommandButton permet de quitter la procédure.
J'ai réussi (Oh ! exploit ...) à écrire un programme en écrivant une procédure dans chaque CheckBox (procédure que je réecris à l'identique autant de fois qu'il y a de CheckBox). Or j'ai lu ... qu'il existait une procédure beaucoup plus élégante et courte qui permettait d'indexer les CheckBox avec une variable (je ne sais pas si je m'exprime correctement ...) et qui permettait d'effectuer le même travail en une seule procédure.
J'ai beau retourner le problème depuis plusieurs jours, je n'avance à rien. Mise à part l'affichage de mon UserForm rien ne fonctionne. Je ne sais même pas comment commencer.
Avez-vous une solution à me proposer.
Par avance, merci.
Danad38
Dans un UserForm, effectuer un calcul à partir de CheckBox
pgz, mercatog,
Merci à vous deux pour vos réponses rapides.
J'ai utilisé ton programme, mercatog, et j'ai effectuer les quelques modifications que je souhaitais. J'ai, grâce à toi découvert la fonction IIf (j'ai cru au premier abord que c'était une faute de frappe !), et en travaillant un peu plus la question j'ai appris beaucoup de choses sur les déclarations de variables ou de procédures (Public ou non).
Une petite question (certainement simpliste) pour laquelle je n'ai pas encore de réponse.
Pourquoi faut-il écrire (j'ai modifié le nom de certaines variables afin qu'elles soient pour moi, plus explicites) :
Code:
Public Sub ChecBox_Cochée(CheckBox As MSForms.CheckBox)
Alors que :
Code:
1 2
| Public Sub CheckBox_Cochée()
Dim CheckBox As MSFroms.CheckBox |
Ne fonctionne pas ?
Merci encore à vous deux.
Danad38