Simplifier formule pour rendre combobox visible !

ronanm

XLDnaute Nouveau
Bonjour,

Voici la formule que j'utilise pour faire apparaitre des combobox les unes apres les autres.
Code:
Private Sub ComboBox13_Change()
If ComboBox13.Text <> "" Then ComboBox14.Visible = True Else ComboBox14.Visible = False
If ComboBox13.Text <> "" Then Rows(24).EntireRow.Hidden = False Else Rows(24).EntireRow.Hidden = True

End Sub

Seulement j'an ai beaucoup et je voulais éviter de le taper à chaque combobox. Existe-t-il un moyen plus rapide du genre

For n = 1 To 23
If Controls("Checkbox" & n) Then
Controls("Checkbox" & n+1).visible = True
End If

Bien à vous.

ronanm
 

ronanm

XLDnaute Nouveau
Re : Simplifier formule pour rendre combobox visible !

J'ai essayer mais je ne sais pas dans quel private sub il faut le mettre pour que cela soit prix en compte tout le temps dans la userform ?

J'ai essayer dans initialize mais cela n'a pas fonctionné. Je poursuit les recherches.

J'ai essayer dans combobox mais non plus cela me met une erreur à "If Controls("Checkbox" & n).Text <> "" Then"


Code:
Private Sub ComboBox7_Change()
For n = 7 To 22
If Controls("Checkbox" & n).Text <> "" Then
Controls("Checkbox" & n + 1).Visible = True
End If
Next
End Sub
Cordialement,
 
Dernière édition:

ronanm

XLDnaute Nouveau
Re : Simplifier formule pour rendre combobox visible !

Re, Alors, bon déhà, ce n'est pas "Checkbox" mais bien "ComboBox" !!

Donc du coup, avec ce code :

Code:
Private Sub ComboBox7_Change()
For n = 7 To 22
If Controls("ComboBox" & n).Text <> "" Then
Controls("ComboBox" & n + 1).Visible = True
Else: Controls("ComboBox" & n + 1).Visible = False
End If
Next
End Sub

Cela fonctionne très bien mais uniquement pour la combobox considérée !!

Comment je peut faire pour le généraliser ?

Cordialement,
 

ronanm

XLDnaute Nouveau
Re : Simplifier formule pour rendre combobox visible !

Hello,
Alors je regarde et je cherche du côté des modules de classe mais je m’initie petit à petit mais là j'ai pas encore toute les logiques !
Je cherche sur les forums mais je ne vois pas encore comment les adaptés pour mon cas !
pourtant cela devrait être simple au vu du problème :

Dès qu'une valeur est sélectionné dans une combobox, une autre s'affiche !! mais vu que j'en ai beaucoup, je voulais mettre un seul code pour tout !

@+
 

bobby5169

XLDnaute Nouveau
Re : Simplifier formule pour rendre combobox visible !

Essaye ça
Code:
Sub combobox_visible()
Dim ctrl As Object
Dim j As Variant


For Each ctrl In Userform1.Controls
    If TypeName(ctrl) = "ComboBox" _
        Then If ctrl.text <> "" True Then ctrl.visible = True
    End If
        
Next
End Sub

attention à adapter peut être le ctrl.text, il faut peut être mettre . value
 

Discussions similaires

Réponses
12
Affichages
455

Statistiques des forums

Discussions
312 305
Messages
2 087 088
Membres
103 461
dernier inscrit
dams94