Re : Problème verrouillage case à cocher
Supposons que tu commences à zéro. Tu as un fichier avec seulement ta feuille Matrice avec tes cellules violettes sans rien d'autre.
CREATION
- tu sélectionnes la plage K8:K101 qui doit recevoir les coches
- tu donnes à cette plage un nom (j'ai choisi PlageDoubleClic1") par clic droit puis Définir un nom (ou dans la barre d'icônes). Tu sors
- cette plage étant sélectionnée, tu définis la police de caractères Windings 2. Lorsque le code VBA sera exécuté, le caractère 80 mettra une coche dans la cellule (voir dans Private Sub Worksheet_BeforeDoubleClick(ByVal Cible As Range, Retour As Boolean))
- le code de traitement des coches Private Sub Worksheet_BeforeDoubleClick(ByVal Cible As Range, Retour As Boolean) doit étre copié et collé dans la partie VBA consacrée à la feuille Matrice. Par ALT + F11, tu trouves ce code à gauche dans la colonne de l'Explorateur de Projet, là où est indiqué : Feuil7 (Matrice) dans ton fichier actuel. Tu cliques et dans la partie droite, tu copies et tu colles dans la partie correspondant à la feuille Matrice de ton nouveau fichier
- dans un premier temps, mets une ' devant les lignes de code : Call ActionSiCoche et Call ActionSiDeCoche pour les inhiber
A ce moment, tu dois pouvoir aller sur ta matrice et cocher/decocher par double-clic dans K8:K101.
EFFACEMENT
- sur la feuille Matrice du nouveau fichier, tu crées un bouton par Développeur/Inserer/ et tu cliques sur le bouton dans la partie Contrôles Activ'X. Tu dessines ton bouton. Tu double-cliques dessus, cela te renvoie dans le code VBA de ce bouton
- tu colleras ici le code que tu iras chercher dans Feuil1 (Matrice) du fichier actuel. Il s'agit du Private Sub CommandButton1_Click()
A ce moment, tu dois pouvoir effacer la totalité des coches.
AUTRE TRAITEMENT
- si le fait de cocher ou décocher doit produire une action quelconque, il faut créer un module (tu peux aussi le mettre à la place des Call xxx mais c'est moins clair) et créer dedans les deux sub : Sub ActionSiCoche() et Sub ActionSiDeCoche() qui comporteront les instructions de traitement
- il faudra supprimer les ' que je t'ai fait mettre plus haut
Voilà, en espérant n'avoir rien oublié...
Cordialement