XL 2019 Création de cases à cocher dynamiquement

  • Initiateur de la discussion Initiateur de la discussion Flx1er
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Flx1er

XLDnaute Occasionnel
Bonjour,
Je dois modifier un formulaire existant en intégrant des nouveaux champs. Ces nouveaux champs seront des questions avec des réponses binaires (oui ou non). Pour cela cela, je désire utiliser les cases à coché.
Cependant, je ne parviens pas à générer de manière dynamique les cases à cocher pour chaque nouvelle ligne.
En exemple, sur la première ligne tableau nommé "Formulaire", il y a la présence des cases à coché et ces dernières sont liés à la cellule de droite :
Si case est coché alors
cellule droite = VRAI
Sinon
Cellule droite = FAUX
Fin de si
Est-il possible de mettre en place un système qui, à chaque création d'une nouvelle ligne, génère dynamiquement les cases à cocher (et les cellules liées) ?
En vous remerciant
 

Pièces jointes

Solution
RE
La suppression ne marche pas : en fait ce nom indique que le classeur est vérolé.

J'ai contourné mais il vaudrait mieux reconstruire un classeur en évitant le copier coller car cela embarque le PB dans le classeur cible
Bonjour

Il est préférable de cocher décocher les cellules à l'aide du clic droit ou du double clic.

Outre que cela évite d'alourdir le fichier en plus de la gestion des cellules liées, la gestion et l'exploitation sont bien plus simples.

Il suffit de définir la plage concernée : le code agira sur la plage
 
Bonjour

Il est préférable de cocher décocher les cellules à l'aide du clic droit ou du double clic.

Outre que cela évite d'alourdir le fichier en plus de la gestion des cellules liées, la gestion et l'exploitation sont bien plus simples.

Il suffit de définir la plage concernée : le code agira sur la plage
Bonjour Chris,
Merci pour le temps passé.
Pourrais-tu m'envoyer un exemple pour éclairer ma lanterne
Cordialement
 
Bonjour Flx1er, Chris,
Un essai en PJ avec deux petites macros. Les cases à cocher deviennent inutiles, c'est directement géré en VBA.
( ensuite dans les calculs "o" vaut FAUX, et "x" vaut VRAI. )
Bonjour sylvanu
Je vous remercie pour le résultat. Cependant, en procédant à des tests, il est possible de modifier accidentellement le contenu des cellules avec facilité.
Par exemple :
  • on sélectionne la cellule b2 et avec la flèche droite (→) : le contenu de c2 est modifié
  • on sélectionne la cellule f5 et avec la flèche gauche (←) : le contenu de e5 est modifié
  • on clic simplement sur une des cellule de Q1; Q2 et Q3 : le contenu est modifié
Je me permets de revenir sur ma demande initiale, à savoir la mise en place d'une solution avec des cases à cocher, étant donné que le fichier est conçu pour des utilisateurs qui n'ont pas une grande maîtrise de l'outil informatique.
En vous remerciant
 
Cependant, en procédant à des tests, il est possible de modifier accidentellement le contenu des cellules avec facilité.
Pour le futur lecteur, une autre approche en utilisant le double clic sur cellule, cela évite tous les inconvénients signalés par Flx1er.
Voir PV V2.
Les cases à cocher sont à éviter à tout prix car :
- Elles ont tendances à se dupliquer ( copier coller intempestif ) et cela devient ingérables
- Supprimer une ligne ne supprime pas les cases à cocher, elles les superposent
- ...
Je me permets de revenir sur ma demande initiale
Bah, alors un essai en V3.
 

Pièces jointes

RE

J'ai bien parlé du clic droit ou du double clic...

L'exemple fourni par Fix1er est assez pauvre...

On peut avoir plusieurs plages de questionnaires et jouer sur les noms de plages pour faire régir le code qui peux prévoir soit du cumulatif (plusieurs réponses possibles par ligne ou colonne), soit de l'alternatif (une seule réponse par ligne ou colonne).

En jouant sur le préfixe (ou suffixe) des noms de plages par exemple, on peut avoir tel type sur une plage et tel autre type sur une autre plage...
 

Pièces jointes

Dernière édition:
RE

J'ai bien parlé du clic droit ou du double clic...

L'exemple fourni par Fix1er est assez pauvre...

On peut avoir plusieurs plages de questionnaires et jouer sur les noms de plages pour faire régir le code qui peux prévoir soit du cumulatif (plusieurs réponses possibles par ligne ou colonne), soit de l'alternatif (une seule réponse par ligne ou colonne).

En jouant sur le préfixe (ou suffixe) des noms de plages par exemple, on peut avoir tel type sur une plage et tel autre type sur une autre plage...
Bonjour Chris,
J'essaye d'implémenter le morceau de code dans mon fichier en respectant bien les nommages : CocherC1, CocherC2, etc.., mais je bloque sur l'erreur : "Erreur d'exécution '1004':"
1741100120199.png

En activant le débogage pas à pas, la variable "Nom" ne récupère pas le premier nom présent dans le gestionnaire de noms, mais prend la valeur "=#NAME?"
Ci joint, le fichier anonymisé en cours de développement.
En vous remercient
 

Pièces jointes

Pour le futur lecteur, une autre approche en utilisant le double clic sur cellule, cela évite tous les inconvénients signalés par Flx1er.
Voir PV V2.
Les cases à cocher sont à éviter à tout prix car :
- Elles ont tendances à se dupliquer ( copier coller intempestif ) et cela devient ingérables
- Supprimer une ligne ne supprime pas les cases à cocher, elles les superposent
- ...

Bah, alors un essai en V3.
Bonjour sylvanu,
Je vous remercie pour les 2 versions proposées et pour votre conseil à savoir éviter d'utiliser les cases à cocher.
Dans le VB de PV V2, les plages (pe : A2:B100; C2:E100) et les références aux colonnes des cellules (pe : "A"; "B"; "C"; "D"; "E") sont figées.
La structure du recueil évoluera avec le temps et la limite de 100 lignes sera vite dépassée.
Mon niveau de compétence en VB est faible. Est-il possible de rendre dynamique les champs et colonnes ?
En vous remerciant
 
Bonjour à tous

@Flx1er

Je te propose ce fichier
Pour info j'ai renommé le Tableau1 en T_BDD plus parlant

Merci de ton retour
Bonjour Phil69970,
Ta solution fonctionne très bien, j'ai juste remplacé "X" par "x" et "" par "o".
Dès qu'une nouvelle ligne est créée, serait il possible d'initialiser à "o" les colonnes "Cellule à cocher 1" à "Cellule à cocher 8".
En vous remerciant
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour