Bonjour, voici le problème :
Le code fonctionne très bien lorsque je l'effectue depuis la feuille "Modele".
Cependant, si j'effectue le code depuis une autre feuille, les ListBox1 et 2 ne se remplissent pas.
Si quelqu'un serait m'indiquer pourquoi..
PS: Je ne peux lié le fichier, étant trop lourd et confidentiel. Le reprendre en entier afin d'enlever les valeurs et autres informations serait trop long.
Private Sub ComboBox1_Change()
Dim col As Integer, n As Integer, m As Integer
Dim val As String, rep As String
'-----------------------------------------
'Remplissage partie "Aperçu"
'-----------------------------------------
On Error GoTo escape
val = Left(ComboBox1, 3)
col = Sheets("Modele").Rows(1).Cells.Find(what:=val, LookAt:=xlWhole).Column 'trouve la colone contenant le modèle
n = Sheets("Modele").Cells(Rows.Count, col + 4).End(xlUp).Row 'compte le nombre de ligne
m = Sheets("Modele").Cells(Rows.Count, col + 5).End(xlUp).Row 'compte le nombre de ligne
rep = Sheets("Modele").Cells(2, col).Value 'variable permettant d'indique si modèle de base ou modèle remplaçant
If val = "" Then 'cas ou la combobox est vide
Label14 = "Modèle"
TextBox8 = ""
TextBox9 = ""
TextBox10 = ""
TextBox11 = ""
ListBox1.Clear
ListBox2.Clear
Image1.Picture = Nothing
Else 'cas ou la combobox n'est pas vide
TextBox8 = Sheets("Modele").Cells(2, col + 1).Value
TextBox9 = Sheets("Modele").Cells(2, col + 2).Value
TextBox10 = Sheets("Modele").Cells(2, col + 3).Value
Image1.Picture = LoadPicture( à définir par la suite )
ListBox1.List() = Sheets("Modele").Range(Cells(2, col + 4), Cells(n, col + 4)).Value
ListBox2.List() = Sheets("Modele").Range(Cells(2, col + 5), Cells(m, col + 5)).Value
If rep = "Remplaçant" Then
Label14 = "Remplace"
Else
Label14 = "Modèle"
End If
End If
escape: Exit Sub
End Sub