Bonjour,

J'ai un formulaire sur lequel j'ai 2 combobox : "ComboProduits" et "ComboVariantes"

Ma 1ère combobox "ComboProduits" est remplie à partir d'une feuille "Produits" qui contient tous mes produits en colonne "A".
Jusque-là aucun problème.

Dans ma feuille "Produits", à chaque ligne de produit j'ai 1 à 4 variantes en colonnes "B" à "E".

Par exemple :
- A2 : "Pantalon"
- B2 : "Bleu"
- C2 : "Blanc"
- D2 : ""
- E2 : ""

Quand un produit est sélectionné dans "ComboProduits", je souhaite que la liste de "ComboVariantes" se génère automatiquement et propose uniquement les 1 à 4 variantes de ce produit.

Dans mon code ci-dessous, j'ai voulu faire une boucle pour chercher toutes les variantes par produit, mais je ne trouve pas la bonne syntaxe

Merci pour votre aide

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub ComboProduits_Change()
 
Dim ws As Worksheet
Dim i As Long
 
Set ws = Sheets("Produits")
 
  If Me.ComboProduits.ListIndex = -1 Then Exit Sub
  With Me.ComboVariantes
    .Clear
    For i = 2 To ws.Cells(Rows.Count, Cells.Columns.Count).End(xlToLeft).Column 'Cette ligne compter le nombre de cellules non vides à droite du produit
      .AddItem ws.Cells(Rows.Count, i) 'Ctte ligne devrait ajouter les "n" variantes dans la ComboVariante
 
    Next i
  End With
End Sub