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

formulaire,

pepin61

XLDnaute Nouveau
bonjour,
je viens juste de m'initier au langage Vba.
Je souhaite faire un formulaire
tout marche comme je veux sauf pour les combobox que ce soit la 2 ou la 3 où je n'arrive pas à mettre un menu
j'ai essayé avec additem et avec array
je suppose qu'il y a quelque chose qui cloche dans mon initialisation :
Private Sub UsfFichierClients_Initialize()
'Nombre de lignes
Dim J As Long
'Nombre de TextBoxs
Dim I As Integer
'variable Ws comme un objet de type Sheet (Feuille de cacul Client)
Set Ws = Sheets("Fichier")

With Me.ComboBox2
For J = 2 To Ws.Range("A" & Rows.Count).End(xlUp).Row
.AddItem Ws.Range("A" & J)
Next J
End With

For I = 1 To 9
'affiche les données dans les textbox
Me.Controls("TextBox" & I).Visible = True
Next I
'Initialisation de Combobox Entreprise, particulier
ComboBox3.List = Array("E", "P")
End Sub

Merci pour votre aide
 

Celeborn61

XLDnaute Occasionnel
Re : formulaire,

Bonjour,

Private Sub UsfFichierClients_Initialize() ' Il faut rester référé à l'userForm "UserForm_Initialize"
'Nombre de lignes
Dim J As Long
'Nombre de TextBoxs
Dim I As Integer
'variable Ws comme un objet de type Sheet (Feuille de cacul Client)
Set Ws = Sheets("Fichier") ' Réfère toi au classeur pour éviter les surprises ultérieures
With Me.ComboBox2
For J = 2 To Ws.Range("A" & Rows.Count).End(xlUp).Row ' Le Rows n'est pas référé
.AddItem Ws.Range("A" & J)
Next J
End With

For I = 1 To 9
'affiche les données dans les textbox
Me.Controls("TextBox" & I).Visible = True ' Tu ne transfert pas les données là, tu ne fais qu'afficher les textBoxs
Next I
'Initialisation de Combobox Entreprise, particulier
ComboBox3.List = Array("E", "P")
End Sub

Copie dans l'éditeur VBA, ce sera plus clair
 
Dernière édition:

herve62

XLDnaute Barbatruc
Supporter XLD
Re : formulaire,

Bonjour
Mieux vaut traiter les données de la Combobox à part de l'Init. un exemple :
Code:
Private Sub UserForm_Initialize()
With Worksheets("Formations par personne")
ligF = DerLigneTexte() ' fonction à part pour rechercher une der. Lig . spéciale
nom_P.AddItem ""

For J = 16 To ligF
nm = Worksheets("Formations par personne").Range("b" & J).Value
nom_P.AddItem nm
Next J .... etc
ensuite j'ai une Combo (liste) : Sub nom_P_AfterUpdate
Mais cela dépend aussi de ce que l'on a à traiter par la suite
 

Discussions similaires

Réponses
11
Affichages
379
Réponses
2
Affichages
355
Réponses
0
Affichages
196
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…