Tuto:Créer automatiquement case à cocher liée cellule en-dessous
Fermé
Vendreur Jack
Messages postés
13
Date d'inscription
mardi 25 octobre 2011
Statut
Membre
Dernière intervention
7 octobre 2014
-
Modifié par pijaku le 29/09/2014 à 08:47
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 8 oct. 2014 à 13:44
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 8 oct. 2014 à 13:44
A voir également:
- Excel cocher une case automatiquement
- Tuto chromecast - Guide
- Tuto tableau croisé dynamique - Guide
- Tuto rufus windows 11 - Guide
- Tuto opencore legacy patcher - Accueil - MacOS
- Convertir youtube en mp3 tuto - Guide
11 réponses
Le Pingou
Messages postés
12229
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
9 janvier 2025
1 454
27 sept. 2014 à 23:07
27 sept. 2014 à 23:07
Bonjour,
Autre possibilité avec une fausse case à cocher, voir exemple : https://www.cjoint.com/?3IBxjJKzyAo
Autre possibilité avec une fausse case à cocher, voir exemple : https://www.cjoint.com/?3IBxjJKzyAo
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
30 sept. 2014 à 14:06
30 sept. 2014 à 14:06
Bonjour,
@Vendreur Jack : J'interviens ici suite à ton interpellation via MP.
Comme je te l'ai dit en MP, je peux, (tout comme Le Pingou le peux), faire de cette discussion un tutoriel.
Cependant, il faut étudier la problématique sous tous les angles.
1- Pour ton tuto, il serait de bon ton d'étudier la proposition de Le Pingou.
Comment la développer pour en arriver aux mêmes fins que toi, c'est à dire comment se servir de la valeur de la cellule pour faire des calculs? Ainsi le tuto proposerait deux pistes aux internautes.
2- As tu envisagé la piste Module de classe? En voilà une troisième.
3- Il convient également de préciser que cette solution VBA n'est valable que dans les cas de nombreuses cases à cocher. texte du tutoriel à revoir.
4- Lorsque l'on a une réponse ici ou ailleurs, les commentaires du style : Pour conclure, c'est plus du bricolage qu'une vraie solution. Mais ça peut être pratique même si c'est plutôt limité. ne poussent pas vraiment à obtenir une continuité dans la discussion. Ne pas oublier qu'à la lecture nous ne savons pas sur quel ton c'est dit, d'autant plus que l'on ne se connait pas...
@ Le Pingou :
Salut,
Comment va?
Acceptes tu de poursuivre ce sujet?
@Vendreur Jack : J'interviens ici suite à ton interpellation via MP.
Comme je te l'ai dit en MP, je peux, (tout comme Le Pingou le peux), faire de cette discussion un tutoriel.
Cependant, il faut étudier la problématique sous tous les angles.
1- Pour ton tuto, il serait de bon ton d'étudier la proposition de Le Pingou.
Comment la développer pour en arriver aux mêmes fins que toi, c'est à dire comment se servir de la valeur de la cellule pour faire des calculs? Ainsi le tuto proposerait deux pistes aux internautes.
2- As tu envisagé la piste Module de classe? En voilà une troisième.
3- Il convient également de préciser que cette solution VBA n'est valable que dans les cas de nombreuses cases à cocher. texte du tutoriel à revoir.
4- Lorsque l'on a une réponse ici ou ailleurs, les commentaires du style : Pour conclure, c'est plus du bricolage qu'une vraie solution. Mais ça peut être pratique même si c'est plutôt limité. ne poussent pas vraiment à obtenir une continuité dans la discussion. Ne pas oublier qu'à la lecture nous ne savons pas sur quel ton c'est dit, d'autant plus que l'on ne se connait pas...
@ Le Pingou :
Salut,
Comment va?
Acceptes tu de poursuivre ce sujet?
Le Pingou
Messages postés
12229
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
9 janvier 2025
1 454
30 sept. 2014 à 14:59
30 sept. 2014 à 14:59
Bonjour pijaku,
Merci, je constate que tu as lu dans mes pensées (pt 4).
De mon côté cela va bien pour mon âge.
A la question : Acceptes tu de poursuivre ce sujet? C'est non pour l'instant j'ai d'autres engagements qui ..... !
Je te souhaite une agréable et excellente semaine.
Amicales salutations.
Le Pingou
Merci, je constate que tu as lu dans mes pensées (pt 4).
De mon côté cela va bien pour mon âge.
A la question : Acceptes tu de poursuivre ce sujet? C'est non pour l'instant j'ai d'autres engagements qui ..... !
Je te souhaite une agréable et excellente semaine.
Amicales salutations.
Le Pingou
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
30 sept. 2014 à 15:03
30 sept. 2014 à 15:03
Pas de souci.
Si tu as le temps, par ci par là, et que tu peux jeter ton oeil dans le coin, ce ne sera pas de refus.
Je vais donc continuer ici.
Merci pour l'agréable semaine. A toi également
Amicalement,
Franck
Si tu as le temps, par ci par là, et que tu peux jeter ton oeil dans le coin, ce ne sera pas de refus.
Je vais donc continuer ici.
Merci pour l'agréable semaine. A toi également
Amicalement,
Franck
Vendreur Jack
Messages postés
13
Date d'inscription
mardi 25 octobre 2011
Statut
Membre
Dernière intervention
7 octobre 2014
30 sept. 2014 à 16:07
30 sept. 2014 à 16:07
Bonjour,
Merci pour ta réponse : tu soulèves des points importants. :D
1) Alors tout d'abord pour répondre aux 4ème et 1er points : J'ai été trop expéditif et j'aurai dû préciser ma pensée plus clairement ^^
En effet, je trouve la solution de Le Pingou vraiment intéressante :
- Concernant la programmation sur Excel, je suis encore débutant : son code m'apparaît déjà assez ingénieux et au-dessus de mon niveau. Il est vraiment instructif :D
- Le visuel de la cellule est même meilleur : la case peut-être agrandie et facilement centrée; et elle a la classe en plus (le "v" est plus esthétique") ;)
Il y a cependant quelques inconvénients inhérents à cette méthode mais on peut les surmonter :
- Il y aura toujours besoin de code, de plus il faut personnaliser le code pour une plage de cellules :/ Mais on pourrait imaginer une macro qui recrée ton script pour la plage sélectionnée. Le code reste mais on a pas besoin de le modifier à la main, donc tout le monde peut l'utiliser :D
- La valeur de la cellule est monopolisée mais on pourrait peut-être jouer dessus avec le format de la cellule (Standard, Nombre, Monétaire ...) pour afficher du texte ou autres.
- La cellule ne peut pas être sélectionnée via un déplacement depuis une case adjacente : mais ça c'est tout à fait logique. C'est plus de la triche ^^
- Pour utiliser la valeur de la cellule : on peut créer une macro qui renvoie la valeur de la cellule en fonction de s'il y un "o" ou pas par exemple, ou qui converti automatiquement un "o" en un chiffre lors du calcul.
Après je sais pas si on peut s'en servir pour depuis une cellule sans passer par VBA mais sinon plus simplement on peut aussi utiliser une des opérations qui cherchent un ou des termes dans la valeur de la cellule ;)
- Si on en utilise beaucoup c'est plus lourd pour l'ordinateur puisqu'il a pas mal de code à gérer, enfin ça dépend du nombre de plage.
La dernière fois j'ai utilisé une macro qui reprend mon premier script en l'utilisant 10 fois sur un nombre de ligne à définir.
Pour un grand nombre de ligne, le pc était à la traîne puisqu'à chaque fois il devait rafraîchir les cases à cocher quand je me baladais sur le document.
Donc c'est peut-être même moins lourd puisque c'est du texte. Surtout que je dois utiliser ma macro sur tablette après ^^
Pour conclure, c'est vraiment intéressant, et plutôt malin même mais faut que l'on s'occupe des limites techniques et voir si c'est encore intéressant en fonction de l'utilisation qui peut en être faite. ;)
2) Je connais pas trop la programmation sur Excel mais de ce que j'ai pu apercevoir les modules de classes peut être vraiment utiles surtout pour "simplifier" le script de Le Pingou : on pourrait calculer les valeurs plus facilement après.
Par exemple : on prend un paramètre pour la valeur de la cellule soit 1 soit 0; puis on joue avec le format de la cellule pour afficher les caractères que l'on veut, ex : si paramètre égal 1 alors afficher "þ". Et la cellule a toujours une valeur de 1 ou de 0 donc c'est tranquille pour le calcul ^^
3) Et effectivement, il faut que je modifie mon introduction : c'est vraiment plus rapide et efficace une fois installé mais pour juste quelques cases à cocher c'est pas moins rapide puisqu'il faut le temps de copier tout ça :)
@ Le Pingou :
J'espère que tu veux bien continuer ce projet et excuse moi si j'ai pu être te paraître désobligeant mais sache que ce n'était pas voulu :)
Merci pour ta réponse : tu soulèves des points importants. :D
1) Alors tout d'abord pour répondre aux 4ème et 1er points : J'ai été trop expéditif et j'aurai dû préciser ma pensée plus clairement ^^
En effet, je trouve la solution de Le Pingou vraiment intéressante :
- Concernant la programmation sur Excel, je suis encore débutant : son code m'apparaît déjà assez ingénieux et au-dessus de mon niveau. Il est vraiment instructif :D
- Le visuel de la cellule est même meilleur : la case peut-être agrandie et facilement centrée; et elle a la classe en plus (le "v" est plus esthétique") ;)
Il y a cependant quelques inconvénients inhérents à cette méthode mais on peut les surmonter :
- Il y aura toujours besoin de code, de plus il faut personnaliser le code pour une plage de cellules :/ Mais on pourrait imaginer une macro qui recrée ton script pour la plage sélectionnée. Le code reste mais on a pas besoin de le modifier à la main, donc tout le monde peut l'utiliser :D
- La valeur de la cellule est monopolisée mais on pourrait peut-être jouer dessus avec le format de la cellule (Standard, Nombre, Monétaire ...) pour afficher du texte ou autres.
- La cellule ne peut pas être sélectionnée via un déplacement depuis une case adjacente : mais ça c'est tout à fait logique. C'est plus de la triche ^^
- Pour utiliser la valeur de la cellule : on peut créer une macro qui renvoie la valeur de la cellule en fonction de s'il y un "o" ou pas par exemple, ou qui converti automatiquement un "o" en un chiffre lors du calcul.
Après je sais pas si on peut s'en servir pour depuis une cellule sans passer par VBA mais sinon plus simplement on peut aussi utiliser une des opérations qui cherchent un ou des termes dans la valeur de la cellule ;)
- Si on en utilise beaucoup c'est plus lourd pour l'ordinateur puisqu'il a pas mal de code à gérer, enfin ça dépend du nombre de plage.
La dernière fois j'ai utilisé une macro qui reprend mon premier script en l'utilisant 10 fois sur un nombre de ligne à définir.
Pour un grand nombre de ligne, le pc était à la traîne puisqu'à chaque fois il devait rafraîchir les cases à cocher quand je me baladais sur le document.
Donc c'est peut-être même moins lourd puisque c'est du texte. Surtout que je dois utiliser ma macro sur tablette après ^^
Pour conclure, c'est vraiment intéressant, et plutôt malin même mais faut que l'on s'occupe des limites techniques et voir si c'est encore intéressant en fonction de l'utilisation qui peut en être faite. ;)
2) Je connais pas trop la programmation sur Excel mais de ce que j'ai pu apercevoir les modules de classes peut être vraiment utiles surtout pour "simplifier" le script de Le Pingou : on pourrait calculer les valeurs plus facilement après.
Par exemple : on prend un paramètre pour la valeur de la cellule soit 1 soit 0; puis on joue avec le format de la cellule pour afficher les caractères que l'on veut, ex : si paramètre égal 1 alors afficher "þ". Et la cellule a toujours une valeur de 1 ou de 0 donc c'est tranquille pour le calcul ^^
3) Et effectivement, il faut que je modifie mon introduction : c'est vraiment plus rapide et efficace une fois installé mais pour juste quelques cases à cocher c'est pas moins rapide puisqu'il faut le temps de copier tout ça :)
@ Le Pingou :
J'espère que tu veux bien continuer ce projet et excuse moi si j'ai pu être te paraître désobligeant mais sache que ce n'était pas voulu :)
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
30 sept. 2014 à 15:43
30 sept. 2014 à 15:43
Bonjour à tous,
Pour participer un peu... :-)
Pour ce qui est des 'moins' de la proposition à le pingou :
Par exemple tu ne peux pas te servir de la valeur de la cellule pour faire des calculs ou alors tu te les compliques.
Rien n'empêches de mettre 0/1 dans les cellules, et si on préfère par esthétisme voir le caractère case à cocher le faire par format personnalisé.
Par contre dans la solution 'case à cocher', si elles ne sont pas liées à des cellules comme actuellement je ne vois pas trop quels calculs on pourrait faire.
En effet tu es chaque fois obligé d'y associer du code VBA, ce qui n'est pas le cas avec mon script
On peut aussi nommer la plage concernée et la macro travaille dessus. En cas d'évol seule la plage du nom est à modifier/compléter.
De plus, avec ces fausses cases à cocher, il faut chaque fois adapter le script VBA pour avoir la bonne plage de cellule.
Pas bien vu la différence, même réponse qu'au dessus.
Rien d'insurmontable pour l'instant.
Pour la solution 'cases à cocher' je dirai que je me méfie des feuilles avec trop d'objets dessus. Excel ne gère pas toujours très bien et souvent on se retrouve avec un affichage tout pourri.
Donc ça aide si on est amené à en créer régulièrement. Mais au-delà de qq petites dizaines, perso je me méfierai et choisirai une autre solution pour ne pas risquer d'instabilités.
Donc comme toujours le choix dépend des conditions.
Et si tu as un fichier qui n'est pas figé et qui s'enrichi de lignes au fil du temps, il va falloir songer au bricolage ;-)
Petite remarque: il me semble que le If ne sert à rien.
eric
Pour participer un peu... :-)
Pour ce qui est des 'moins' de la proposition à le pingou :
Par exemple tu ne peux pas te servir de la valeur de la cellule pour faire des calculs ou alors tu te les compliques.
Rien n'empêches de mettre 0/1 dans les cellules, et si on préfère par esthétisme voir le caractère case à cocher le faire par format personnalisé.
Par contre dans la solution 'case à cocher', si elles ne sont pas liées à des cellules comme actuellement je ne vois pas trop quels calculs on pourrait faire.
En effet tu es chaque fois obligé d'y associer du code VBA, ce qui n'est pas le cas avec mon script
On peut aussi nommer la plage concernée et la macro travaille dessus. En cas d'évol seule la plage du nom est à modifier/compléter.
De plus, avec ces fausses cases à cocher, il faut chaque fois adapter le script VBA pour avoir la bonne plage de cellule.
Pas bien vu la différence, même réponse qu'au dessus.
Rien d'insurmontable pour l'instant.
Pour la solution 'cases à cocher' je dirai que je me méfie des feuilles avec trop d'objets dessus. Excel ne gère pas toujours très bien et souvent on se retrouve avec un affichage tout pourri.
Donc ça aide si on est amené à en créer régulièrement. Mais au-delà de qq petites dizaines, perso je me méfierai et choisirai une autre solution pour ne pas risquer d'instabilités.
Donc comme toujours le choix dépend des conditions.
Et si tu as un fichier qui n'est pas figé et qui s'enrichi de lignes au fil du temps, il va falloir songer au bricolage ;-)
Petite remarque: il me semble que le If ne sert à rien.
eric
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
30 sept. 2014 à 15:49
30 sept. 2014 à 15:49
Salut Eriiic,
Participe, mais participe donc.
Je te relirais au calme, là je t'ai lu en diagonale.
Je trouvais la solution de Le Pingou astucieuse et originale. Il me semble que l'adapter au cas précis de ce jour ne doit pas être compliqué. J'essaierai demain.
Ensuite, la solution la plus "voisine" de la solution manuelle reste le module de classe. Dans ce cas, l'utilisateur installe lui-même ses cases à cocher, avec des copié-collé s'il le veut...
Reste la solution de Vendreur Jack
Petite remarque: il me semble que le If ne sert à rien.
Perso j'aurais plutôt une grosse remarque sur le Dim range As Range...
A voir aussi le comportement de ces CheckBox avec des cellules fusionnées. Ca je ne sais pas, me battant becs et ongles pour que plus personne ne fusionne! (euh je parle d'excel là, vous fusionnez avec qui vous voulez quand vous voulez...)
Franck
Participe, mais participe donc.
Je te relirais au calme, là je t'ai lu en diagonale.
Je trouvais la solution de Le Pingou astucieuse et originale. Il me semble que l'adapter au cas précis de ce jour ne doit pas être compliqué. J'essaierai demain.
Ensuite, la solution la plus "voisine" de la solution manuelle reste le module de classe. Dans ce cas, l'utilisateur installe lui-même ses cases à cocher, avec des copié-collé s'il le veut...
Reste la solution de Vendreur Jack
Petite remarque: il me semble que le If ne sert à rien.
Perso j'aurais plutôt une grosse remarque sur le Dim range As Range...
A voir aussi le comportement de ces CheckBox avec des cellules fusionnées. Ca je ne sais pas, me battant becs et ongles pour que plus personne ne fusionne! (euh je parle d'excel là, vous fusionnez avec qui vous voulez quand vous voulez...)
Franck
Vendreur Jack
Messages postés
13
Date d'inscription
mardi 25 octobre 2011
Statut
Membre
Dernière intervention
7 octobre 2014
Modifié par Vendreur Jack le 30/09/2014 à 16:33
Modifié par Vendreur Jack le 30/09/2014 à 16:33
Salut Eriiic et Franck,
Il faudrait que j'essaye pour le If et sinon pour le Dim range As Range j'ai vu ça sur un site dans un exemple.
En fait, j'avais jamais codé en VBA jusqu'à samedi dernier : j'ai "appris" sur le tas en enregistrant des macros et en regardant des exemples ^^ Donc hésitez pas à me signaler mes (nombreuses) erreurs :D
@ Eriiic
Du coup j'ai déjà répondu en partie un plus haut ^^
T'as clairement raison de te méfier pour les feuille avec trop d'objet ça lague à partir d'un certain nombre.
Et sinon, quand je disais "En effet tu es chaque fois obligé d'y associer du code VBA, ce qui n'est pas le cas avec mon script " j'entendais par là qu'une fois la macro utilisée, il n'y a plus besoin de code actif, les cases à cocher créées ne sont liées à aucune macro. ;)
@Franck
Et si j'ose demander quel est le problème avec la fusion, c'est plutôt pratique je trouve : ça évite à mon script de créer des cases à cocher inutiles; et puis c'est plus simple pour la mise en forme du texte. ^^
Il faudrait que j'essaye pour le If et sinon pour le Dim range As Range j'ai vu ça sur un site dans un exemple.
En fait, j'avais jamais codé en VBA jusqu'à samedi dernier : j'ai "appris" sur le tas en enregistrant des macros et en regardant des exemples ^^ Donc hésitez pas à me signaler mes (nombreuses) erreurs :D
@ Eriiic
Du coup j'ai déjà répondu en partie un plus haut ^^
T'as clairement raison de te méfier pour les feuille avec trop d'objet ça lague à partir d'un certain nombre.
Et sinon, quand je disais "En effet tu es chaque fois obligé d'y associer du code VBA, ce qui n'est pas le cas avec mon script " j'entendais par là qu'une fois la macro utilisée, il n'y a plus besoin de code actif, les cases à cocher créées ne sont liées à aucune macro. ;)
@Franck
Et si j'ose demander quel est le problème avec la fusion, c'est plutôt pratique je trouve : ça évite à mon script de créer des cases à cocher inutiles; et puis c'est plus simple pour la mise en forme du texte. ^^
Vendreur Jack
Messages postés
13
Date d'inscription
mardi 25 octobre 2011
Statut
Membre
Dernière intervention
7 octobre 2014
Modifié par Vendreur Jack le 30/09/2014 à 16:37
Modifié par Vendreur Jack le 30/09/2014 à 16:37
Désolé, j'avais pas vu vos messages : j'étais en train d'écrire ma réponse à pijaku ^^
Je regarde tout ça maintenant
EDIT :
Et oui, j'ai mis des smileys partout ^^ Mais là au moins, vous savez sur quel ton je le dis x)
Je regarde tout ça maintenant
EDIT :
Et oui, j'ai mis des smileys partout ^^ Mais là au moins, vous savez sur quel ton je le dis x)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
1 oct. 2014 à 08:52
1 oct. 2014 à 08:52
Bonjour,
Je regarde ça ce matin et reviens, tout à l'heure, avec un classeur exemple...
Je regarde ça ce matin et reviens, tout à l'heure, avec un classeur exemple...
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
1 oct. 2014 à 11:17
1 oct. 2014 à 11:17
Voici donc un classeur exemple ou j'ai exploité vos deux possibilités...
https://www.cjoint.com/c/DJbls3E9Zs6
Pour la méthode de Le Pingou, me reste à voir les "propriétés"...
https://www.cjoint.com/c/DJbls3E9Zs6
Pour la méthode de Le Pingou, me reste à voir les "propriétés"...
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
Modifié par pijaku le 1/10/2014 à 12:48
Modifié par pijaku le 1/10/2014 à 12:48
Classeur modifié suite à la remarque (en MP) d'Eriiic :
https://www.cjoint.com/c/DJbmWSUbu4k
Donc : 1 macro par méthode
🎼 Cordialement,
Franck 🎶
Et si on veut 0 ou 1 pour simplifier les formules après :With Target 'cellule "liée" .Value = Abs(.Range("A1").Value - 1) .NumberFormat = """þ"";General;""o"";@" Application.EnableEvents = False .Range("A1").Offset(, 1).Select Application.EnableEvents = True End With
J'ai mis cellule liée =target et .EnableEvents = False aussi...
https://www.cjoint.com/c/DJbmWSUbu4k
Donc : 1 macro par méthode
🎼 Cordialement,
Franck 🎶
Le Pingou
Messages postés
12229
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
9 janvier 2025
1 454
Modifié par Le Pingou le 1/10/2014 à 15:38
Modifié par Le Pingou le 1/10/2014 à 15:38
Bonjour pijaku,
J'ai fait un petit détour, bravo pour le complément c'est super. J'en profite pour un petit salut à eriiic.
A une prochaine.
Le Pingou
J'ai fait un petit détour, bravo pour le complément c'est super. J'en profite pour un petit salut à eriiic.
A une prochaine.
Le Pingou
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
1 oct. 2014 à 15:45
1 oct. 2014 à 15:45
Salut,
Merci à toi, mais...
Le mérite est à attribuer à Eric.
enfin, je prends quand même ;-)
A+
Franck
Merci à toi, mais...
Le mérite est à attribuer à Eric.
enfin, je prends quand même ;-)
A+
Franck
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
6 oct. 2014 à 10:52
6 oct. 2014 à 10:52
Bonjour,
Pas de réponse de Vendreur Jack...
Abandon du suivi de ce sujet?
Pas de réponse de Vendreur Jack...
Abandon du suivi de ce sujet?
Bonjour pijaku,
J'ai été pas mal occupé et ça m'est sorti de la tête :/ Dsl
Du coup là j'ai pu jeter un coup d'oeil à ton classeur : les deux solutions sont très bien mises en scène. C'est beaucoup plus pratique même s'il faut toujours définir une plage : est-il possible de l'appliquer à tout le document, la police spéciale servant "d'activateur" ?
Sinon les deux solutions m'ont l'air désormais complètes : on pourrait en faire un tuto officiel ? :D
Et encore merci pour votre sollicitude.
Vendreur Jack
J'ai été pas mal occupé et ça m'est sorti de la tête :/ Dsl
Du coup là j'ai pu jeter un coup d'oeil à ton classeur : les deux solutions sont très bien mises en scène. C'est beaucoup plus pratique même s'il faut toujours définir une plage : est-il possible de l'appliquer à tout le document, la police spéciale servant "d'activateur" ?
Sinon les deux solutions m'ont l'air désormais complètes : on pourrait en faire un tuto officiel ? :D
Et encore merci pour votre sollicitude.
Vendreur Jack
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
7 oct. 2014 à 08:44
7 oct. 2014 à 08:44
Salut,
est-il possible de l'appliquer à tout le document, la police spéciale servant "d'activateur" ?
Oui, bien sur. Mais ce n'est pas le but du tutoriel que de répondre à tous les cas de figure. Il s'agit ici de créer une fiche pratique sur la création automatique de cases à cocher liées à des cellules.
Sinon, pour info, il suffit d'ajouter une apostrophe devant la première ligne de la macro :
est-il possible de l'appliquer à tout le document, la police spéciale servant "d'activateur" ?
Oui, bien sur. Mais ce n'est pas le but du tutoriel que de répondre à tous les cas de figure. Il s'agit ici de créer une fiche pratique sur la création automatique de cases à cocher liées à des cellules.
Sinon, pour info, il suffit d'ajouter une apostrophe devant la première ligne de la macro :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'restriction de la plage ' If Target.Column > 10 Or Target.Row > 20 Then Exit Sub 'plage A1:J20 If Target.Count = 1 Or Target.MergeCells Then If Target.Font.Name = "Wingdings" Then With Target 'cellule "liée" .Value = Abs(.Range("A1").Value - 1) .NumberFormat = """þ"";General;""o"";@" Application.EnableEvents = False .Range("A1").Offset(, 1).Select Application.EnableEvents = True End With End If End If End Sub
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
7 oct. 2014 à 08:45
7 oct. 2014 à 08:45
ps : si j'ai le temps, j'écrirais le texte de cette fiche dans la journée...
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
7 oct. 2014 à 11:00
7 oct. 2014 à 11:00
J'ai eu le temps, je mets ça en ligne et compte sur vous pour une relecture.
Pour toutes corrections, vous pouvez, au choix, utiliser ce sujet ou me MP...
Merci encore à tous.
Pour toutes corrections, vous pouvez, au choix, utiliser ce sujet ou me MP...
Merci encore à tous.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
7 oct. 2014 à 11:03
7 oct. 2014 à 11:03
https://www.commentcamarche.net/faq/41456-excel-creation-automatique-de-cases-a-cocher-liees-aux-cellules-en-dessous
Vendreur Jack
Messages postés
13
Date d'inscription
mardi 25 octobre 2011
Statut
Membre
Dernière intervention
7 octobre 2014
7 oct. 2014 à 11:40
7 oct. 2014 à 11:40
Salut,
J'ai pu voir le tuto : il est vraiment parfait ! :D
Juste une petite suggestion (pour la méthode de Le Pingou) :
On pourrait peut-être mettre dans "Note" ou en commentaire, directement dans le code, qu'il est possible de modifier la position (à gauche, au milieu, en bas ...) de la case à cocher dans la cellule avec cette méthode, et seulement avec celle-ci.
Sinon j'ai pu tester le classeur : quand tu fais une somme d'une plage où il y a des cellules avec des "fausses" cases à cocher, le résultat sera toujours "þ" tant qu'il y a une case cochée et au contraire si ce n'est pas le cas la valeur sera "o".
Il faudrait pouvoir compter le nombre de case à cocher active directement même si au pire il suffit de faire : =NB.SI(G3:G14;1) pour la plage G3:G14 par exemple.
Et MERCI ça fait vraiment plaisir :)
J'ai pu voir le tuto : il est vraiment parfait ! :D
Juste une petite suggestion (pour la méthode de Le Pingou) :
On pourrait peut-être mettre dans "Note" ou en commentaire, directement dans le code, qu'il est possible de modifier la position (à gauche, au milieu, en bas ...) de la case à cocher dans la cellule avec cette méthode, et seulement avec celle-ci.
Sinon j'ai pu tester le classeur : quand tu fais une somme d'une plage où il y a des cellules avec des "fausses" cases à cocher, le résultat sera toujours "þ" tant qu'il y a une case cochée et au contraire si ce n'est pas le cas la valeur sera "o".
Il faudrait pouvoir compter le nombre de case à cocher active directement même si au pire il suffit de faire : =NB.SI(G3:G14;1) pour la plage G3:G14 par exemple.
Et MERCI ça fait vraiment plaisir :)
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
Modifié par pijaku le 7/10/2014 à 11:45
Modifié par pijaku le 7/10/2014 à 11:45
Je vais ajouter la formule donnant la somme.
et Merci à toi!
et Merci à toi!
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
Modifié par eriiic le 7/10/2014 à 13:50
Modifié par eriiic le 7/10/2014 à 13:50
Bonjour à tous,
Impeccable ;-)
Suggestions partie 1 :
- préciser le type de checkbox utilisé : Formulaire
- ajouter la déprotection de la cellule liée. Si la feuille est protégée on a le message d'alerte, la coche est basculée mais pas la valeur liée = > déphasage.
- j'ai un doute sur le bien fondé de .NumberFormat = ";;;".
un débutant risque d'être perdu de ne pas voir le résultat dans la cellule liée, et ça complique le contrôle d'un décompte. Je le mettrai plutôt en 'option
Eventuellement mettre Remplissage sur automatique pour masquer au moins partiellement le résultat (?)
Mais bon... ça se discute :-)
partie 2 :
Pour la détection de la plage je mettrais bien qq chose comme :
eric
Impeccable ;-)
Suggestions partie 1 :
- préciser le type de checkbox utilisé : Formulaire
- ajouter la déprotection de la cellule liée. Si la feuille est protégée on a le message d'alerte, la coche est basculée mais pas la valeur liée = > déphasage.
- j'ai un doute sur le bien fondé de .NumberFormat = ";;;".
un débutant risque d'être perdu de ne pas voir le résultat dans la cellule liée, et ça complique le contrôle d'un décompte. Je le mettrai plutôt en 'option
Eventuellement mettre Remplissage sur automatique pour masquer au moins partiellement le résultat (?)
Mais bon... ça se discute :-)
partie 2 :
Pour la détection de la plage je mettrais bien qq chose comme :
If Intersect(Union([A2:A10], [D2:D10])) Is Nothing Then Exit Subpour montrer comment faire si plusieurs plages distinctes.
eric
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
7 oct. 2014 à 13:54
7 oct. 2014 à 13:54
Salut Eriiic,
Modifications enregistrées :
- sauf pour : Eventuellement mettre Remplissage sur automatique pour masquer au moins partiellement le résultat (?)
Motif : le but n'est pas de lister toutes les possibilités et tous les cas de figure. Comme ça nous aurons plus de questions sur les forums ;-)
- Avec une toute petite nuance, ajout de Target dans ton Intersect.
Modifications enregistrées :
- sauf pour : Eventuellement mettre Remplissage sur automatique pour masquer au moins partiellement le résultat (?)
Motif : le but n'est pas de lister toutes les possibilités et tous les cas de figure. Comme ça nous aurons plus de questions sur les forums ;-)
- Avec une toute petite nuance, ajout de Target dans ton Intersect.
If Intersect(Union([A2:A10], [D2:D10]), Target) Is Nothing Then Exit Sub
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
7 oct. 2014 à 14:05
7 oct. 2014 à 14:05
Motif : le but n'est pas de lister toutes les possibilités et tous les cas de figure. Comme ça nous aurons plus de questions sur les forums ;-)
Disons que sans le format ;;; la superposition du VRAI et de la case à cocher transparente fait un peu caca, opaque ça passe un peu mieux... :-)
Avec une toute petite nuance...
C'était pour voir si tu le verrais ;-)
eric
Disons que sans le format ;;; la superposition du VRAI et de la case à cocher transparente fait un peu caca, opaque ça passe un peu mieux... :-)
Avec une toute petite nuance...
C'était pour voir si tu le verrais ;-)
eric
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
7 oct. 2014 à 14:15
7 oct. 2014 à 14:15
Disons que sans le format ;;; la superposition du VRAI et de la case à cocher transparente fait un peu caca, opaque ça passe un peu mieux... :-)
Effectivement. Mais bon comme j'ai dit plus haut : ça fera l'objet de questions sur les forums...
C'était pour voir si tu le verrais ;-)
Et bien figure toi que je ne l'ai vu qu'à la dernière minute... Je n'allais tout de même pas tester tes propositions Nanmého ! ;-))
Effectivement. Mais bon comme j'ai dit plus haut : ça fera l'objet de questions sur les forums...
C'était pour voir si tu le verrais ;-)
Et bien figure toi que je ne l'ai vu qu'à la dernière minute... Je n'allais tout de même pas tester tes propositions Nanmého ! ;-))
Le Pingou
Messages postés
12229
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
9 janvier 2025
1 454
8 oct. 2014 à 13:43
8 oct. 2014 à 13:43
Bonjour pijaku,
Félicitation pour la publication : Création automatique de cases à cocher liées aux cellules en-dessous.
Excellente fin de semaine.
Amicales salutations.
Félicitation pour la publication : Création automatique de cases à cocher liées aux cellules en-dessous.
Excellente fin de semaine.
Amicales salutations.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
8 oct. 2014 à 13:44
8 oct. 2014 à 13:44
Salut Le Pingou,
Tout le mérite, ou du moins le tiers, t'en revient.
Merci et à toi également, bonne fin de semaine.
A+
Tout le mérite, ou du moins le tiers, t'en revient.
Merci et à toi également, bonne fin de semaine.
A+
Modifié par Vendreur Jack le 28/09/2014 à 23:59
Par exemple tu ne peux pas te servir de la valeur de la cellule pour faire des calculs ou alors tu te les compliques.
En effet tu es chaque fois obligé d'y associer du code VBA, ce qui n'est pas le cas avec mon script : on utilise VBA seulement pour créer les cases à cocher mais après elles sont indépendantes.
De plus, avec ces fausses cases à cocher, il faut chaque fois adapter le script VBA pour avoir la bonne plage de cellule.
Pour conclure, c'est plus du bricolage qu'une vraie solution.
Mais ça peut être pratique même si c'est plutôt limité.
Merci pour ta réponse :)
29 sept. 2014 à 10:39
Merci de vos commentaires.