VB excel Listbox variable

Fermé
pas-maintenant - 11 févr. 2008 à 13:41
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 11 févr. 2008 à 18:17
Bonjour,
Alors voilà, j'ai cherché un peu partout sans trouver de réponse. Je vais commencer par écrire la partie de mon code qui pose problème:


Do Until Cells(i, 4) = ""
If Cells(i, 4) Like PartNumber & "*" And _
Cells(i, 9) >= Début And _
Cells(i, 9) <= Fin And _
Cells(i, 20) <> "Y" And _
Cells(i, 19) <> "En cours" And _
Cells(i, 2) Like Client Then
Qté = Qté + 1
End If
If Cells(i, 4) Like PartNumber & "*" And _
Cells(i, 9) >= Début And _
Cells(i, 9) <= Fin And _
Cells(i, 19) = "Y" And _
Cells(i, 20) <> "Y" And _
Cells(i, 2) Like Client Then
MTBF = MTBF + 1
End If
i = i + 1
Loop

Donc...Ma variable "Client" était jusqu'à présent rentrée dans une combobox (à partir de cellules, qui ne me permettait de rentrer qu'une seule selection), et j'aimerais maintenant pouvoir selectionner plusieurs clients à l'aide d'une listbox choix multiple, mais évidemment "Client" ne peut avoir qu'une seule valeur? Une petite précision, le code que j'ai mis là, est raccourci par rapport à celui que j'ai en réalité (environ 200 pages de macro, pour une BDD de 30 000 lignes), donc l'idéal pour moi n'est bien sur PAS une boucle qui va me faire la macro pour chaque client selected!! :-)
Si vous avez une solution miracle, ce serait vraiment nickel!!
A voir également:

1 réponse

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 718
11 févr. 2008 à 18:17
bonjour

Il suffit que tu enlèves le client de ton if.

Si toutes les autres conditions sont réunies, tu vérifies si ton client fait partie de la sélection avec une array par exemple
0