Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

ComBobox Affiche et Masque Tbx

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 !

MuscatMimi

XLDnaute Accro
Bonsoir a tous


Dans mon Fichier joint
j'ai une Cbx dans laquelle je choisi le nombres de Tbx a afficher
Si Je choisi 6 dans ma Cbx, et 6 Tbx s'affichent
mais si je veux revenir au choix 3 dans la Cbx,j'aimerai que les 6 Tbx précédement affichées s'éffacent,sans passer par le Btn Initialize
Est-il possible d'arriver a ce que je désire?,

Bonne soirée
 

Pièces jointes

Dernière édition:
Re : ComBobox Affiche et Masque Tbx

Bonsoir Vaucluse,
voici une manière d'y parvenir.

VB:
Private Sub ComboBox1_Change()
Dim Dernier_TBX As Byte, Numero As Byte

Numero = Me.ComboBox1.Value
Dernier_TBX = 12

For i = 1 To Numero
    Me.Controls("TextBox" & i).Visible = True
Next i

For i = Numero + 1 To Dernier_TBX
    Me.Controls("TextBox" & i).Visible = False
Next i
    
End Sub

Cordialement,

Étienne
 
Re : ComBobox Affiche et Masque Tbx

Bonsoir VaucluseImmo,

C'est dommage, c'était simple et tu avais déjà fais tout le boulot!

Ton code avant modification :
Code:
Private Sub ComboBox1_Change()
Dim i As Byte

If ComboBox1.ListIndex <> -1 Then
    For i = 1 To ComboBox1.Value
        Me.Controls("TextBox" & i).Visible = True
    Next i
End If
If ComboBox1.ListIndex <> -1 Then
    For i = 1 To ComboBox1.Value
        Me.Controls("Label" & i).Visible = True
    Next i
End If

End Sub

Ton code après modification :
Code:
Private Sub ComboBox1_Change()
Dim i As Byte

UserForm_Initialize

If ComboBox1.ListIndex <> -1 Then
    For i = 1 To ComboBox1.Value
        Me.Controls("TextBox" & i).Visible = True
    Next i
End If
If ComboBox1.ListIndex <> -1 Then
    For i = 1 To ComboBox1.Value
        Me.Controls("Label" & i).Visible = True
    Next i
End If

End Sub

Code testé sur ton fichier, ça fonctionne.

Bonne soirée
 
Bsoir,

Oui cela est parfaitement possible. Si les textbox (nommées pour l'exemple textbox1 à textbox12) existent au préalables et qu'elles sont simplement rendues visibles, tu peux faire ainsi :
Code:
For t = 1 to  12 'Si y a 12 Txtbx
    Me.Controls("TextBox" & t).Visible = IIf(t > val(Combobox1.Value), False, True)
Next t
cf. fichier joint

[edit] hello, y avait pas de fichier joint qd j'ai regardé ceci...
 

Pièces jointes

Dernière édition:
Re : ComBobox Affiche et Masque Tbx

Salut VaucluseImmo,
Salut Etienne2323 (je t'avais pas vu, toutes mes excuses),

Christian, j'ai répondu un peu vite et je n'ai pas pris le temps de lire ton code. Tu sais que tu peux racourcir ton code en mettant qu'une boucle au lieu de deux?

Ce qui donnerais :
Code:
Private Sub ComboBox1_Change()
Dim i As Byte

UserForm_Initialize

If ComboBox1.ListIndex <> -1 Then
    For i = 1 To ComboBox1.Value
        Me.Controls("TextBox" & i).Visible = True
        Me.Controls("Label" & i).Visible = True
    Next i
End If

End Sub

Bonne fin de soirée à tous.

Edition : bonsoir Softmama. Décidément ce post inspire beaucoup de monde lol
 
Re : ComBobox Affiche et Masque Tbx

Et bé Merci a tout les intervenant

Comme tu le précise Excel-lent,mon post inspire du monde

et je vois qu'il y a pas mal de façons d'arriver a ce que je désirais

A noter Excel-lent,que j'ai placé Userform-Initialize comme tu l'a placé,
mais ça fonctionnais pas,je ne comprenais pas trop pourquoi
c'est pour cela,que j'ai posté

Merci a nouveau a tous
Bonne nuit, a bientôt
 
Re : ComBobox Affiche et Masque Tbx

Hello,

vaucluse immo à dit:
j'ai placé Userform-Initialize comme tu l'a placé,
mais ça fonctionnais pas

Tu as bien fais comme ci-joint?

Car comme toi j'ai Excel 2003 et ça fonctionne très bien.

Lorsque tu clic dans la Combobox sur 5 (par exemple) : 5 TextBox et Label s'affichent et lorsque tu clic sur un chiffre plus petit, il y a le bon nombre de TextBox et Label.

A te lire

Bonne fin de soirée
 
Re : ComBobox Affiche et Masque Tbx

Bonjour Excel Lent,Sofmama,Etienne et le Forum

Excel Lent je t'ai dis,que avant de créer ce post,
j'avais placé UserForm_Initialize en début de Procédure de la Cbx1
mais ça ne fonctionnais pas,pourquoi je ne sais pas
c'est pourquoi j'ai créé ce post
Aprés avoir reçu les les réponses, j'ai tout testé et donc ta proposition
de placer Initialize comme tu me l'a proposé,et la!!miracle ça fonctionnait
j'ai pas compris pourquoi avant ça n'a pas fonctionné
pas grave maintenant c'est bon
Bonne journée a tous et a bientôt
 
- 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

Réponses
2
Affichages
644
R
Réponses
20
Affichages
4 K
RaVenSs
R
S
Réponses
4
Affichages
1 K
S
C
Réponses
4
Affichages
2 K
C
Réponses
8
Affichages
1 K
C
Réponses
2
Affichages
751
chris_sympa
C
G
Réponses
6
Affichages
5 K
Gaspachi
G
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…