Données qui ne s'affichent pas dans une combobox

Bonjour à tous,

J'essaye d'apprendre petit à petit le vba mais je sèche sur certains points, comme le suivant...

J'ai mis dans une feuille un commandbutton. Lorsque je clique dessus un userform s'affiche avec un combobox. Jusque la pas de soucis.

Or j'ai entré le code pour afficher les données d'une plage de cellule dans la combobox mais ces données ne s'affichent pas... Je ne comprend pas pourquoi...

Mon code est le suivant :

Private Sub UserForm1_Initialize()

Dim value As Range

For i = 3 To 8

Sheets("statistiques").UserForm1.ComboBox1.AddItem = Cells(i, 1).value

Next i

ComboBox1.value.Activate.Select

End Sub

Quelqu'un pourrait m'éclairer ?

Et seconde question, je n'arrive pas à savoir comment on fait pour activer une donnée sélectionnée dans une combobox... J'ai beau chercher je ne trouve pas la solution...

Merci d'avance

Bonjour,

Essais comme ceci plutôt (pas testé)

Private Sub UserForm1_Initialize()

'Dim value As Range => ne sert à rien, value n'est pas une variable, la seule variable à déclarer ici est i 
Dim i As Integer

For i = 3 To 8

Me.ComboBox1.AddItem = Sheets("statistiques").Cells(i, 1).value

Next i

'ComboBox1.value.Activate.Select => tu veux faire quoi excatement là ?  tu lui demande 3 instructions en même temps

End Sub

Cordialement,

Merci pour ta réponse aussi rapide !

Ça ne veut toujours pas marcher, je ne sais pas trop pourquoi...

Concernant la dernière ligne j'ai oublié de l'effacer ^^ Mais je voudrais, une fois que j'ai cliqué dans la liste de données sur une, l'activer pour ensuite faire d'autres choses avec.

Par exemple cliquer sur un élément de la liste pour après lancer une recherche dans une autre feuille à partir de cette cellule...


Voila mon fichier

67essai.xlsm (19.10 Ko)

Alors chaque chose en son temps ^^

Déjà, désolé, mais je n'ai pas l'habitude de l'instruction .additem, en général, je remplis mes combobox avec le paramètre "rowsource".

Essais en remplaçant par ce code là :

Private Sub UserForm1_Initialize()

Worksheets("Feuil1").Activate
Me.ComboBox1.RowSource = Worksheets("Feuil1").Range("A1:A10").Address(0, 0)

End Sub

Private Sub UserForm_Activate()

Worksheets("Feuil1").Activate
Me.ComboBox1.RowSource = Worksheets("Feuil1").Range("A1:A10").Address(0, 0)

End Sub

Pour pouvoir faire quelque chose du résultat choisi dans ta liste, on verra quand celle-ci fonctionnerra

Cordialement,

Je dois pas être doué, ça marche pas lol

Voila le fichier modifié.

J'avoue que je n'ai pas vraiment les bases et que beaucoup d'éléments m'échappent dans les codes et je sais pas trop où apprendre chacun des mots des codes.

Comme : A quoi sert "me."

A quoi sert "Strchaine".

etc...

Merci de m'aider en tout cas c'est gentil


Et le fichier

105essai.xlsm (18.67 Ko)

Cela ne marche pas car tu n'as remplacé que par une partie d'une code que je t'ai donné, il faut aussi mettre la partie userform_activate.

le "ME" représente l'userform, ça évite de réécrire son nom complet à chaque fois.

strchaîne, cela devait être le nom d'une variable représentant une chaine de texte (str => STRing = chaine de texte), mais c'est un nom choisi par le codeur, pas une fonction vba.

Cordialement,

Exact c'est une erreur dans mon copié collé !! Ca marche, merci !

Et concernant la sélection d'une donnée sélectionnée dans la listbox ?

Par exemple je clique sur une donnée qui apparait dans la listbox et quand je clique sur un bouton ok situé en dessous, cette valeur s'inscrit dans une case.

Après je me débrouillerai pour adapter ceci à ce que je veux réellement faire


J'ai trouvé partiellement ma réponse

Avec ce code :

Sheets("Feuil1").Range("B1").value = Me.ComboBox1.List(Me.ComboBox1.ListIndex)

Ca m'inscrit la valeur dans un cellule d'une feuille. C'est toujours ça Merci en tout cas !

Rechercher des sujets similaires à "donnees qui affichent pas combobox"