bouclage evenementiel sur chkbox dans usf ?!

bérylion

XLDnaute Occasionnel
Salut la foule

je bute sur un cas spécial depuis ce matin :

j'ai un USF classique, avec une grosse poignée de chkbox et 2 boutons (valider, annuler) :

  • la 1ere chkbox permet de switcher toutes les autres à la meme valeur (en bouclant sur toutes les chkbox et en leur attribuant sa propre valeur)

  • le btn annuler ferme le usf et rend la main à la sub de départ

  • le btn valider boucle sur toutes les chkbox et stock leur caption dans un tableau si leur valeur et TRUE

  • les 8 autres chkbox ne sont pas codées

jusque la pas de pb tout fonctionne sans rien faire couiner.

je voudrais, pour chiader la chose, pouvoir à l'inverse attribuer la valeur null à cette 1ere chkbox si une partie seulement des autres à la valeur TRUE :confused:

je saurais faire en codant chaque chkbox mais ça m'intéresse pas (le nbre de chkbox est amené à augmenter donc risque d'oubli...)

ma question est donc la suivante :
comment tester les valeurs de toutes les chkbox quand l'une d'elle change de valeur ??!

A vot' bon coeur m'sieurs dame...
 

Cousinhub

XLDnaute Barbatruc
Re : bouclage evenementiel sur chkbox dans usf ?!

Bonjour,

regarde le fichier joint...

1 clic sur le chkbx "Total" te valide tous les checkbox de la Frame

1 clic sur un des chkbx de la Frame te met le chkbx "Total" si tous les chkbx sont à vrai, ou l'enlève le cas échéant

Bon courage
 

Pièces jointes

  • mdl_classe_chkbx.xls
    28 KB · Affichages: 68

Habitude

XLDnaute Accro
Re : bouclage evenementiel sur chkbox dans usf ?!

Avec module de classe comme ceci ?


bhbh j'aime bien l'idée d'affecter des objet déja créer a son vecteur. Par contre ca te force a utiliser des variables public dans un module.
 

Pièces jointes

  • chkbox_Classe.zip
    16.8 KB · Affichages: 61
  • chkbox_Classe.zip
    16.8 KB · Affichages: 57
  • chkbox_Classe.zip
    16.8 KB · Affichages: 66
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : bouclage evenementiel sur chkbox dans usf ?!

Salut bhbh
Salut Habitude

Je regarderais vos contributions des que possible

@ bérylion

revois ceci

Code:
For [COLOR=red]j%[/COLOR] = 1 To i
    Set chkbox(i).chkbox = Controls("CheckBox" &[COLOR=red] i[/COLOR])
Next
 

laetitia90

XLDnaute Barbatruc
Re : bouclage evenementiel sur chkbox dans usf ?!

bonjour bérylion,pierrejean,Fo_rum,Habitude,bhbh,pascal , le forum

comme je comprends???? pas certaine!!!
 

Pièces jointes

  • class2.zip
    24.8 KB · Affichages: 52
  • class2.zip
    24.8 KB · Affichages: 60
  • class2.zip
    24.8 KB · Affichages: 58

aubelix

XLDnaute Impliqué
bouclage evenementiel sur chkbox dans usf ?

Bonjour à tous les amis du Forum. :)

Une question complémentaire:
Comment incorporer dans l'USF le libellé des Numéros contenus
dans la feuille base. En sachant que cette liste est de longueur variable.

Merci pour votre réponse.
Cordialement.
 

Pièces jointes

  • ClassCheckBox.zip
    17.9 KB · Affichages: 42

Habitude

XLDnaute Accro
Re : bouclage evenementiel sur chkbox dans usf ?!

Pour les libellés
Dans le ADD tu n'as qu'a modifier les paramètres.

C'est la force d'un objet lorsqu'il est bien construit.
Il est facilement modifiable.
 

Pièces jointes

  • chkbox_Classe.zip
    18.7 KB · Affichages: 45
  • chkbox_Classe.zip
    18.7 KB · Affichages: 45
  • chkbox_Classe.zip
    18.7 KB · Affichages: 47

bérylion

XLDnaute Occasionnel
Re : bouclage evenementiel sur chkbox dans usf ?!

Bonjour,

regarde le fichier joint...

1 clic sur le chkbx "Total" te valide tous les checkbox de la Frame

1 clic sur un des chkbx de la Frame te met le chkbx "Total" si tous les chkbx sont à vrai, ou l'enlève le cas échéant

Bon courage

salut, et merci

j'en voulais pas tant :D , mais ça me permet de voir plusieurs solutions pour un meme probleme
;)

**je vais en passer un temps à décortiquer tout ça, moi...**

:D
 

bérylion

XLDnaute Occasionnel
Re : bouclage evenementiel sur chkbox dans usf ?!

Avec module de classe comme ceci ?


bhbh j'aime bien l'idée d'affecter des objet déja créer a son vecteur. Par contre ca te force a utiliser des variables public dans un module.

:eek:

salut

alors la, tu voles un peu haut pour moi...

intéressant, mais pas nécessaire dans mon cas :

les chkbox sont créées à la main, car j'utilise uniquement leur caption

en revanche, ton approche est très instructive ; habituellement j'aurais créer le usf à la volée et inséré les chkbox par une boucle, mais la ça ouvre d'autres horizons créatifs que je ne vais pas manquer d'étudier !!!

;)
 

bérylion

XLDnaute Occasionnel
Re : bouclage evenementiel sur chkbox dans usf ?!

bonjour bérylion,pierrejean,Fo_rum,Habitude,bhbh,pascal , le forum

comme je comprends???? pas certaine!!!

re-

y manquait juste la touche finale : si toutes les chkbox sont TRUE alors chkbox1 = TRUE

modifié à l'arrache :


Code:
Public WithEvents cbx As MSForms.CheckBox

Private Sub cbx_Change()
If cbx = UserForm1.CheckBox1 Then
    For Each ctrl In UserForm1.Controls
        If TypeOf ctrl Is MSForms.CheckBox Then ctrl.Value = UserForm1.CheckBox1
    Next
Else
    For Each ctrl In UserForm1.Controls
        If TypeOf ctrl Is MSForms.CheckBox Then
            i = i + 1
            If ctrl.Caption <> "" Then Y = Y - ctrl.Value
        End If
    Next
    Select Case Y
        Case 0:     UserForm1.CheckBox1 = False
        Case i - 1:   UserForm1.CheckBox1 = True
        Case Else:  UserForm1.CheckBox1 = Null
    End Select
End If
End Sub

finalement, tout ça pour une futilité completement inutile :D :

comme dit tout au début, le form affiche des chkbox avec les noms des contacts à qui envoyer le classeur
le bouton "OK" récupère les caption des chkbox=true dans un tableau et repasse la main à une sub standard pour envoi du classeur


mébon, j'aurai appris des choses ; merci à tous pour vos excellentes contributions.
 

aubelix

XLDnaute Impliqué
Re : bouclage evenementiel sur chkbox dans usf ?!

Bonjour à tous les amis du Forum. :)

Ma question s'adressait à Fo rum. Car sa réponse correspondrait à
un projet que je dois traiter. A savoir, comment reprendre les numéros
de la feuille "BASE" dans l'USF. En sachant que le nombre est variable de 1 à 44.
Comment afficher les numéros. En validant déclencher une action.
Par exemple recopier une feuille modèle sous le numéro d'onglet du numéro.
Si il y'a 10 numéros, création de 10 onglets ayant pour nom les numéros affichés dans l'USF etc...

Par avance Merci pour votre aide.
Cordialement.
 

bérylion

XLDnaute Occasionnel
Re : bouclage evenementiel sur chkbox dans usf ?!

reuh à tous

une copie du fichier finalisé pour ceux que ça intéresse.

le module de classe ne sert à rien sinon à faire joli, mais ce fut un tres bon exercice et l'occasion pour moi de mettre les mains dans les modules de classe.

merci encore à tous, et à bientot car j'ai plein d'idées à mettre en pratique !!...

;)
 

Pièces jointes

  • chkbox_class.zip
    22.1 KB · Affichages: 53

Statistiques des forums

Discussions
312 428
Messages
2 088 332
Membres
103 814
dernier inscrit
Lolo280277