Nombreuses Combobox et Textbox invisibles / Visibles (VBA)

dadalolo

XLDnaute Nouveau
Bonjour,

Je m'adresse à vous car je ne vois pas comment réaliser quleque chose qui me serait utile. Je débute depuis cette semaine là-dedans.

J'ai créé un formulaire avec plusieurs champs à remplir par un utilisateur. Il y a des TextBox et des Combobox principalement.

Ce que je souhaiterais faire, c'est qu'en fonction de la réponse de l'utilisateur à une question (par exemple réponses NON dans un choix oui/non), l'affichage d'une partie du questionnaire soit cachée ou non.

Alors cela induit deux choses :

- il faut pouvoir cacher des lignes à souhaits. Pour cela pas de soucis. Je me suis créé deux macros. L'une pour cacher et l'autre pour dévoiler. Je sélectionne les lignes qui doivent disparaître ou apparaître en VBA, et puis j'exécute ma macro. Ca marche parfaitement.

- Il faut faire disparaître toute une série de champs (ComboBox, TextBox), mais pas nécessairement tous ... tout dépend de la question concernée ... Je n'y parviens pas de manière simple, propre et élégante. En fait, pour l'instant, ma solution consiste à écrire manuellement Combobox1.visible = false, Combobox2.visible = false etc etc etc ... J'ai beaucoup de Combobox, donc j'aimerais une macro pour faire cela. Mais je ne veux pas non plus créer une dizaine de macros (avec l'une qui cache tel et tel élément, une deuxième qui cache tel et tel autre élément, etc ...). Cela est-il faisable en une et une seule macro ? En gros, j'aimerais faire comme pour les lignes : pouvoir sélectionner toutes les Combobox (existe-t-il une commande pour le faire et ne pas devoir toutes les sélectionner une à une ?) et ensuite pour toutes les combobox, demande de faire visible = false (en une seule instruction ? Dans un boucle for ?) ... j'ai l'idée en pratique, mais je ne sais pas si elle est réalisable. Et si elle l'est, je ne sais pas comment le faire ...

Merci d'avance pour votre aide !
dadalolo
 
Dernière édition:

dadalolo

XLDnaute Nouveau
Re : Nombreuses Combobox et Textbox invisibles / Visibles (VBA)

je reformule pour clarifier ...

De la ligne 20 à 100 de mon fichier j'ai des questions dans des cellules de ma feuille. A côté de ces celulles j'ai ajouté des Combo et des TextBox.

J'aimerais, si la question à la ligne 25 se solde par un NON, que mes lignes 34 à 42 disparaissent par exemple. Ca je sais le faire. Mais j'aimerais aussi que les Combo et TextBox disparaissent également ... car pour l'instant elles s'empilent toutes de manière très peu grâcieuse. Je sais que je peux jouer sur Visible ... Je peux les traiter une à une manuellement ... mais ce serait beaucoup de lignes et de temps à y consacrer.

Cela est-il plus clair avec l'exemple concret ?
 

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 180
dernier inscrit
Vcr