Pb Liste déroulante VBA

mathias59390 Messages postés 65 Statut Membre -  
 Maurice -
Bonjour,

j'ai crée une liste déroulante en VBA, mais mon pb est qu'elle me donne le résultat de la colonne A et je voudrais le résultat de la colonne E dans ma liste déroulante.

Ci dessous la formule VBA:

'Correspond au programme de la LISTE DEROULANTE
Private Sub ComboBox1_Change()
Dim Ligne As Long
Dim I As Integer
   If Me.ComboBox1.ListIndex = -1 Then Exit Sub
  Ligne = Me.ComboBox1.ListIndex + 2
  For I = 1 To 38
    Me.Controls("TextBox" & I) = Ws.Cells(Ligne, I + 1)
  Next I
 End Sub
 Sub FORMULAIRE() 'ou le nom que vous avez défini pour la macro
UserForm1.Show vbModeless
End Sub


Merci pour votre aide
A voir également:

18 réponses

Gyrus Messages postés 3360 Statut Membre 526
 
Bonjour,

Ton code n'indique pas comment la zone de liste déroulante (ComboBox1) a été renseignée.
- soit par code,
- soit avec la propriété ListFillRange.

A+
0
mathias59390 Messages postés 65 Statut Membre
 
Bonjour,

Dans mon cas je désire activé la liste déroulante dans la colonne F pour remplacer un TextBox5

Aurais tu une solution pour moi

Merci
0
Gyrus Messages postés 3360 Statut Membre 526
 
Je ne comprends pas ta demande.

Pour me permettre de t'aider efficacement, il faudrait que tu joignes un fichier accompagné des explications nécessaires.

Pour joindre le fichier, tu peux utiliser https://www.cjoint.com/
Ensuite, reviens coller ici le lien donné par le site.

A+
0
mathias59390 Messages postés 65 Statut Membre
 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Maurice
 
Bonjour
je pense que ses plutot la colonne G
voila la modife
Private Sub UserForm_Initialize() 'à l'initialisation de l'userform
' Déclaration des variables grâce à Dim
'    1° Choisir un nom
'    2° Choisir un TYPE (= définir la nature du contenu)
' --------------------------------------------------------
Dim J As Long 'déclare la variable J
Dim I As Integer
' Affecter une valeur à une variable (= fixer la valeur de la variable)
  Set Ws = Sheets(Feuil5.Name) 'Attention ce nom doit correspondre au nom de votre ONGLET
'On stock le nom de la feuille "FICHIER ADRESSES" dans une variable nommée WS
  With Me.ComboBox1
    For J = 2 To Ws.Range("G" & Rows.Count).End(xlUp).Row
      .AddItem Ws.Range("G" & J)
    Next J
  End With
  For I = 1 To 38 'on lance une boucle de valeur mini 1 et maxi 38
    Me.Controls("TextBox" & I).Visible = True 'affiche les données dans les textbox
Next I
End Sub

A+
Maurice
0
Gyrus Messages postés 3360 Statut Membre 526
 
Il va falloir un peu plus que "Voila" comme explication.

Tu dis que tu désires activer la liste déroulante dans la colonne F pour remplacer un TextBox5 .
La TextBox5 qui concerne le conseiller alors que la colonne F concerne l'IDE ???
S'agit-il de renseigner une liste déroulante dans la feuille "bdd Club" ou la ComboBox1 dans l'userform ?

Si tu ne prends pas le temps d'expliquer ton besoin clairement et précisément, je ne peux rien pour toi.

A+
0
mathias59390 Messages postés 65 Statut Membre
 
Oui c'est vrai

au départ j'ai pris ma Bdd et en fonction des intitulés de ma BDD, j'ai créé mon userform. Mais je ne l'est fait qu'avec des Textbox (38) et 1 combobox.

Comme je suis super novice en VBA j'ai trouvé un site qui explique les bases très clairement. Donc je me suis lancé.

Au départ je ne comprenais pas que tous était décalé de 1.

Mon Objectif est que lorsque l'ont recherche par IDE toute les informations s'affiche.
La sur l'exemple j'ai mis F a la place du G et j'ai bien dans mon menu ma liste avec mes 7 chiffres et 1 lettre, que je veux mettre a la place de la Texbox5 (supprimer).
Je te fait parvenir un nouveau ci joint avec les intitulés au bonne endroit.

https://www.cjoint.com/c/EHumdrxjXkg

Amitié
0
Gyrus Messages postés 3360 Statut Membre 526
 
Si je comprends bien, tu as trouvé la solution à ton problème.
La recherche s'effectue bien sur l'IDE et l'affichage des données correspondantes se fait correctement dans le formulaire.

Le sujet est-il résolu ?

A+
0
Maurice
 
Bonjour
j'ais fait des petite modife a toi de voir ci ca te va
si tu fait un UserForm evite de faire des liste dans ton onglet

http://www.cjoint.com/c/EHupBduIvaJ

Amuse toi
A+
Maurice
0
mathias59390 Messages postés 65 Statut Membre
 
Bravo Maurice,

c'est super, mais j'ai encore 2 petites choses a voir:

1/ Faire disparaitre le TextBox5 a côté de IDE et le remplacer par le ComBox1
2/ Que la colonne A s'affiche dans le TextBox38

A+
Mathias
0
Maurice
 
Bonjour
1/Modification de la combox1
2/deplacement de la colonne A
Modidication du code VBA
http://www.cjoint.com/c/EHutNpO8maJ
A+
Maurice
0
mathias59390 Messages postés 65 Statut Membre
 
Merci maurice,

c'est génial, tu peux me dire comment tu as fait pour c'est 2 modifications??
Pour ma culture perso afin que je puisse comprendre le cheminement et biensur progresser en vba

Amitié

Mathias
0
mathias59390 Messages postés 65 Statut Membre
 
Maurice,

j'ai une autre question: la sur l'outil que tu as mis a jour je ne peux pas modifier la présentation en fond jaune. ????

En tous cas merci pour ton aide, je commence a mieux comprendre le milieu du VBA
0
Maurice
 
Bonjour
encore des modife regarde bien
On change les couleur dans l' Onglet Var

http://www.cjoint.com/c/EHvkbRC8Zwy

maintenent a toi de continuer
A+
Maurice
0
mathias59390 Messages postés 65 Statut Membre
 
Merci pour ton aide,

j'ai encore quelque truc a régler.
Mais je ne perd pas espoir d'y arrivé

Merci a toi
0
Maurice
 
Bonjour
Voila avec tous les combobox
sa doit marcher
http://www.cjoint.com/c/EHvp6i2rpKy

A+
Maurice
0
mathias59390 Messages postés 65 Statut Membre
 
Merci pour tous,

peux tu me dire le code que tu as mis pour que ce soit:

la Colonne Nbr s'affiche ou que les résultats ne soit pas décaler d'une colonne.

merci a toi
0
Maurice
 
Bonjour
tu est pas obliger de suivre mon code
je te donne que des astuce a toi de voir si ca te convient

pour la TexBox38 (Nbr) = Colonne(38) Ou Colonne(AL)

http://www.cjoint.com/c/EHxjvPddKgm

A+
Maurice
0