Combinaison checkbox [Résolu]

- - Dernière réponse :  shadowskill067 - 23 nov. 2012 à 12:03
hello a tous,

j'ai cherché par mot (checkbox), mais je n'est pas trouvé de réponses ...

j'ai problème de débutant.
pour présenter le sujet. j'ai une liste de personnel que je doit affilier à une liste de matériel. sauf que un type de matériel ne peut être validé plusieurs fois par une même personne et inversement. j'aimerais donc pouvoir bloquer les checkbox en fonction du choix. jusque là tout va bien.
le problème est, si je sélectionne 1 je verrouille la ligne et la colonne. ECT... le problème c'est lorsque je décoche une case, le verrouillage ce défait...
avez-vous une solution?

petite représentation des checkbox:
checkbox1 - checkbox2 - checkbox3 - checkbox4
checkbox5 - checkbox6 - checkbox7 - checkbox8
checkbox9 - checkboxX - checkboxX - checkboxX

mon code actuel est:
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
CheckBox2.Enabled = False
CheckBox3.Enabled = False
CheckBox4.Enabled = False
CheckBox7.Enabled = False
Else
CheckBox2.Enabled = True
CheckBox3.Enabled = True
CheckBox4.Enabled = True
CheckBox7.Enabled = True
End If
End Sub
Afficher la suite 

12 réponses

Meilleure réponse
3
Merci
hello a tous,

sa y est j'ai trouvé comme un grand garçon.

j'ai basé ma logique a 9 checkbox.
j'ai créer une variable dans un nouveau module
private sub test ()
'toutes mes conditions, en précisant que c'et sur la feuilX (X = n° de la feuil)
end sub
et a chaque
private sub nomdelacheckbox ()
call mudule.test
end sub

si sa peu aider quelqu'un j'ai un example que je garderais bien au chaud ;)

bonne journée à tous.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 191 internautes nous ont dit merci ce mois-ci

Commenter la réponse de shadowskill067
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
215
0
Merci
Bonjour,
Je n'ai pas l'impression que tu développes sous VB.Net.
Or, tu es ici dans la section :
Forum > VB.NET et VB 2005

Sous quoi développes-tu donc ?


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
0
Merci
oui, excusez moi. je suis nouveau et j'ai du mal avec tout ses chapitre ... -_-
je suis sous VBA excel..........
Commenter la réponse de shadowskill067
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
215
0
Merci
Bon.
Je pense qu'un administrateur bienveillant déplacera cette discussion.

Je n'ai pas totalement compris ton mécanisme (je n'arrive pas à voir vraiment le lien entre ce que tu veux - une ligne et une colonne bloquées - et le code montré)
Peux-tu être plus clair ?


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
0
Merci
je vais essayiez de faire au plus simple.

je doit m'occuper d'une gestion d'outillages par rapport aux personnels. dans chacune des valise l'on retrouves ces diverses outillages. parmi ces derniers il y a des appareils de mesures (multimètre, scope, ...).
mon tableau à la représentation suivante: en colonne j'ai les noms de mes collègues et en lignes le numéros de suivis de chacun des appareils qui sont répertorié par catégorie (rappel: multimètre, scope, ...). j'ai donc plusieurs multimètre avec des numéros de suivis différents. chacun des appareil doit être affilié à une personnes. d'ou le fait d'avoir un verrouillage sur la même ligne et la même colonne (logiquement une même personne ne peut avoir deux appareils identique, même si le numéro de suivis est différents. a l'inverse, on ne peut pas affilié un appareil à une personne si ce dernier est déjà sélectionné chez une personne).

avec la ligne de code précédemment marqué. je peux bloquer les checkbox selon mes besoin. mais lorsque je décoche une checkbox le verrouillage n'est pas maintenue...

si l'on peut mettre un fichier joins pour que ce soie plus explicite dite moi comme je peux vous faire cela...
Commenter la réponse de shadowskill067
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
215
0
Merci
si l'on peut mettre un fichier joins pour que ce soie plus explicite dite moi comme je peux vous faire cela...

Non. Seuls les moins prudents ouvriraient d'ailleurs un classeur dont ils ne sont pas l'auteur !
Reste technique, s'il te plait. Les "raisons" exposées de ton appli ne nous regardent pas et finissent par "noyer" les choses !
dis-nous :
- combien de checkboxes tu as par ligne
- montre-nous un exemple de répartition de ces lignes (avec les "numéros" attribués aux checkboxes. serait-ce ainsi ?

C1------C2------c3-----c4
c5------c6------c7-----c8
....
c17----c18-----c19----c20
etc ???

ou autrement ? Et comment ? ===>> Montre

2) dis-nous lesquelles sont à inhiber lorsque tu coches au début, avant tout autre geste (réponses exactes + dire selon quelle "raison") par exemple :
La C1 ===>>
La c6 ===>>
Etc ... de manière purement technique (sans nous parler de "personnes", d' "appareils", etc ...
En peu de mots : le mécanisme exposé clairement de ce que tu souhaites.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
63
0
Merci
Salut

Catégorie modifiée.
Pense aussi à utiliser la coloration syntaxique quand tu colles du code (3ème icone à droite) = plus facile à lire.

Dans ta Sub CheckBox1_Click, tu as utilisé un If-Then-Else.
La première partie inhibe tes objets.
La seconde partie les rend à nouveau accessibles.
Si tu ne veux pas qu'il redeviennent accessible, supprime ces lignes !
Mais il faudra penser à leur réinitialisation ...

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Commenter la réponse de cs_Jack
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
215
0
Merci
Oui,
Et j'ai en plus en ce qui me concerne comme l'impression (mais j'attends qu'il s'explique), qu'il cherche finalement à ne pouvoir sélectionner qu'un seul élément par ensemble, dans deux ensembles distincts, ensemble1 et ensemble2.
Si tel était bien le cas, ce ne serait pas avec des checkboxes, qu'il faudrait traiter le problème, mais tout avec deux ensembles distincts d'optionbuttons !
Il ferait d'ailleurs aussi bien avec deux listboxes à choix unique, l'une pour les éléments de son premier ensemble et l'autre pour ceux de son deuxième ensemble.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
0
Merci
okey, on va faire pro alors.

j'ai étudier la chose avec les optionsbutton, mais sa ne convient pas à ma finalité.
j'ai tenté avec des togglebutton, mais j'ai les mêmes symptomes.

j'ai 10 checkbox par ligne et 30 par colonne.

la répartition est la suivante:
A1--A2--A3--A4--A5--A6--A7--A8--A9--A10
B1--B2--B3--B4--B5--B6--B7--B8--B9--B10
C1--C2--C3--C4--C5--C6--C7--C8--C9--C10
...etc...

admettons que:
je valide A1. A2,A3,A4,A5,A6,A7,A8,A9,A10,B1,C1 se verrouillent.
impossible donc de les validés.
je valide ensuite B2. B1,B3,B4,B5,B6,B7,B8,B9,B10,A2,C2 se verrouille. impossible donc de les validés.
--pour l'instant tout vas bien-- les actions souhaités se réalisent.

--le problème--
si je désactive B2. B1,B3,B4,B5,B6,B7,B8,B9,B10,A2,C2 se deverouille alors que B1 et A3 doivent être verrouiller par A1 qui lui reste validé.
Commenter la réponse de shadowskill067
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
215
0
Merci
j'ai 10 checkbox par ligne et 30 par colonne

300 Checkboxes !!!
Il est manifeste que tu as là une défaut important de conception !
Je ne suivrai personnellement pas dans une démarche de ce genre. Désolé.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
0
Merci
si sa peux vous rassurer. c'est en plusieurs faction. vous n'aurais pas 300 checkbox a gérer mais plus que 50.
***************************************************************
A1--A2--A3--A4--A5--A6--A7--A8--A9--A10
B1--B2--B3--B4--B5--B6--B7--B8--B9--B10 1ERE FACTION
C1--C2--C3--C4--C5--C6--C7--C8--C9--C10
***************************************************************
D1--D2--D3--D4--D5--D6--D7--D8--D9--D10
E1--E2--E3--E4--E5--E6--E7--E8--E9--E10 2EME FACTION
F1--F2--F3--F4--F5--F6--F7--F8--F9--F10
***************************************************************
..ETC
***************************************************************

rassuré ? ^^"
Commenter la réponse de shadowskill067
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
215
0
Merci
Ce n'est pas le principe (le même quel que soit le nombre), mais le nombre lui-même !
Or, même avec 50 checkboxes "seulement" (comme tu dis) ===>> ce n'est pas normal et dénote autre chose (carence de conception). Toujours désolé, mais j'ai mes "convictions" et elles sont telles que je me refuse TOUJOURS à encourager les égarements.
Re-désolé. Je n'y peux rien, je suis ainsi "fait".


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu