VBA [Excel] Récupérer la donnée d'une listbox dans une formule

Résolu/Fermé
Alya - 22 janv. 2020 à 15:20
 Alya - 22 janv. 2020 à 16:05
Bonjour,

Je travaille sur Excel 2013 et j'ai besoin d'aide.
J'ai une liste pêle-même de quatre sports en colonne A et j'aimerais pouvoir en sélectionner un dans la listbox d'un userform (sans avoir à l'écrire dans une cellule) et un msgbox me dira combien de fois ce sport apparaît en colonne A.
Et accessoirement, j'aimerais aussi savoir si les choix de la listbox peuvent être intégrés au code sans avoir à les écrire dans les cellules de la feuille.
J'ai essayé avec le code
Private Sub CommandButton1_Click()
Choix = ListBox1.Value
test = WorksheetFunction.CountIf(Range("A1:A10"), Choix)
MsgBox test
End Sub

mais je rencontre un message d'erreur, voici le lien du fichier: https://www.cjoint.com/c/JAwoqszGndC
Auriez-vous une solution à me proposer?

Merci beaucoup!

1 réponse

Bonjour Alya,

J'ai remplacé ta ListBox par une Combobox et ça passe avec le code suivant:

Private Sub CommandButton1_Click()

Choix = ComboBox1.Value
test = WorksheetFunction.CountIf(Range("A1:A10"), Choix)
MsgBox test

End Sub


Par ailleurs, pour intégrer les choix de ta ComboBox au code, efface ce que tu as mis dans la propriété de la ComboBox à RowSource, et ajoute le code suivant:
Private Sub UserForm_Initialize()

UserForm1.ComboBox1.List = Array("", "Judo", "Karaté", "Kick boxing", "Lutte", "Taekwondo")

End Sub


Enjoy!
1
Super, ça marche!!

Merci!!!
0