Contrôle de formulaire activation ouverture liste déroulante

Bonjour,

J'ai besoin d'aide afin de réaliser une ouverture de liste déroulante à partir d'un contrôle de formulaire.

Sur ma feuille, trois cases d'option sont réunies via une zone de groupe. Le résultat de ces dernières fait varier, via sa cellule liée, le résultat d'une fonction si dans une autre case.

Je souhaiterais que, lorsque un des trois contrôle est coché (celui qui renvoie la valeur 3 dans la case liée), une zone liste déroulante déjà présente et dont la cellule liée va également faire changer le résultat d'un fonction si dans une autre cellule, "s'active" automatiquement et qu'un choix soit nécessaire pour poursuivre.

Je suis débutant en excel et en VBA, j'ai cru comprendre qu'une partie de la solution pouvait être dans la mise en place d'un userform avec une combobox mais je ne sait pas utiliser ce système et de plus je suis pas sûr que ce soit la solution à mon problème. Une solution plus simple serait la bienvenue.

Par avance merci à tous ceux qui me proposerons leur aide.

Bonne année à tous le monde dans tous les cas!

LESQUALE

Bonjour et bienvenue sur le forum

LESQUALE a écrit :

Sur ma feuille, trois cases d'option sont réunies via...

Joins le fichier, ce sera un bon début pour voir ce qu'on peut faire....

Bye !

Bonjour et merci!

Ci-joins le fichier, malheureusement j'ai du sacrément l’amputer pour des raisons de confidentialité comme tu pourras le constater avec les macros qui ne mènent à rien (et toutes les données non plus d’ailleurs, vraiment désolé).

Je me suis fait aider pour le module controle_mois, tu pourras voir que toute le reste est très mal fait et très brouillon, c'est la première fois que j'utilise du VBA et je ne suis pas sûr d'avoir choisi les chemins les plus simples a chaque fois (comme la répétition de la macro sur la case d'option 46 fois...) mais j'ai fait avec les moyens du bord, je ne désespère pas de m'améliorer!

Par avance merci pour toute réponse,

LESQUALE

LESQUALE a écrit :

Ci-joins le fichier, malheureusement j'ai du sacrément l’amputer

En effet ! Tu l'as tellement amputer que lorsqu'on a saisi les données sollicitées par l'invitation à l'ouverture, la macro plante sur l'instruction :

Sheets("TABLEAU").Select

Normal : il n'y a pas de feuille applelée ''TABLEAU" dans le fichier...

Bye !

oui, c'est vrai autant pour moi, je n'y ai pas pensé avant de poster le fichier! Celui-ci devrait être mieux.

Merci pour ton aide!

Ouh ! la ! la !

Ton approche me semble bien compliquée avec ces 138 boutons d'options et ces 46 listes déroulantes.

Je te propose plus simple avec en effet un userform qui s'applique à toutes les lignes du tableau.

Tu cliques sur 1 des 3 cellules E ou F ou G et ta boite de dialogue s'ouvre et les saisies se substituent à celles de tes précédents contrôles.

Cela te convient-il ?

Bon courage !

Bye !

Oui en effet mon approche n'est sans doute pas la plus simple mais comme je te l'ai indiqué précédemment je fais avec les moyens du bord, j'ai eu quelques cours sur les cases d'option avec cellules liées ainsi que les bases du VBA mais rien de suffisant pour connaître toutes les différentes possibilités qui s'offraient à moi.

Merci beaucoup pour ton aide, en effet cette méthode paraît beaucoup plus simple! Le problème étant que les résultat dans la cellule liée qui rentrait dans le calcul d'une fonction si (voir mon 1er message)dans une autre case ne fonctionne plus dans cette méthode. (voir colonnesi masquées du tableau). De plus le userform devrais se fermer directement en cas de NA ou de C et devrais demander de choisir un endroit de la liste en cas de NC, du mois c'est ce que j'aimerais arriver à faire. Je ne sait pas si c'est faisable, je te remercie en tout cas pour ton aide, je comprend un peu mieux le principe du userform et je vais donc essayer de creuser de ce côté là !

LESQUALE

Bonjour

LESQUALE a écrit :

Le problème étant que les résultat dans la cellule liée qui rentrait dans le calcul d'une fonction si (voir mon 1er message)dans une autre case ne fonctionne plus dans cette méthode.

Ok ! Nouvelle version :

capture1

De plus le userform devrais se fermer directement en cas de NA ou de C

On est bien d’accord.

... le userform … et devrais demander de choisir un endroit de la liste en cas de NC, du mois c'est ce que j'aimerais arriver à faire.

Là, désolé mais il faudrait m’en dire un peu plus. Quel choix veux-tu qu’on te propose exactement ?

Bye !

Génial!!

c'est niquel comme ça!

J'ai juste fait une petite modif pour arriver à ce dont je te parlais dans ma précédente réponse et maintenant c'est pile poil ce qu'il me fallait,

capture

J'ai enlevé les blocs de if des deux premiers boutons et j'ai corrigé "3" à la place de "13" dans le troisième bouton!

Merci beaucoup pour ton aide!

Rechercher des sujets similaires à "controle formulaire activation ouverture liste deroulante"