problème combobox avec liste variable

francois91

XLDnaute Occasionnel
Bonjours,
J'ai un probleme avec un combobox de mon user form.
Je m'explique: J'ai un 1er combobox servant à choisir à quelle machinne l'utilisateur veut ajouter une action.
Le 2eme combobox sert a choirir l'action en question que l'utilisateur vaajouter

Ce pendant je ne vois pas comment faire pour que ma liste d'action varie en fonction de la machine choisie dans le 1er cbbox

Je joint un fichier pour aider a mieux comprendre.

Si quelqu'un a une idée ou sais comment faire...
merci d'avance
 

Pièces jointes

  • fichier.xls
    24.5 KB · Affichages: 116
  • fichier.xls
    24.5 KB · Affichages: 119
  • fichier.xls
    24.5 KB · Affichages: 120

Spitnolan08

XLDnaute Barbatruc
Re : problème combobox avec liste variable

Bonjour,

Sur la base de ton fichier, une solution parmi d'autres :
Code:
Private Sub ComboBox1_Change()
Dim cel As Range

With Sheets("Feuil1")
    Set cel = .Cells(Rows.Count, ComboBox1.ListIndex + 7)
    ComboBox2.List = .Range(.Cells(2, ComboBox1.ListIndex + 7), .Cells(cel.End(xlUp).Row, ComboBox1.ListIndex + 7)).Value
End With

End Sub
Cordialement
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re : problème combobox avec liste variable

Bonjour François, le Forum

Tu peux remplacer ton code du UserForm par celui-ci :

Code:
Option Explicit
 
Private Sub UserForm_Initialize()
Dim i As Integer
 
With Feuil1
    For i = 2 To .Range("A65000").End(xlUp).Row
        Me.ComboBox1.AddItem .Range("A" & i)
    Next
End With
 
End Sub
 
 
 
Private Sub ComboBox1_Change()
Dim i As Integer, C As Byte
    C = Me.ComboBox1.ListIndex + 7 'Combobox en base 0, + nombre de colonnes décalées
With Feuil1
    For i = 2 To .Cells(65000, C).End(xlUp).Row
       Me.ComboBox2.AddItem .Cells(i, C)
    Next
End With
End Sub

Si j'ai bien interprété ta demande, ceci devrait fonctionner.

Bon "Wouik Hand"

@+Thierry
EDITION

Désolé collision Spinolan
 

Spitnolan08

XLDnaute Barbatruc
Re : problème combobox avec liste variable

Re,
Bonsoir Thierry,:)

Pas le même code mais même esprit...
Et en plus tu as ajouté ce que j'ai oublié : la modification du chargement du 1er combo : RowSource à bannir d'un USF...;)

Cordialement

edit: et Re pierrejean:)
 

francois91

XLDnaute Occasionnel
Re : problème combobox avec liste variable

Merci beaucoup pour votre aide à tous, mon prblème est résolu. cependant j'aurais aimé avoir quelques explication sur le code afin de pouvoir le réutiliser.

En particulier sur cette partie:

Private Sub ComboBox1_Change()
ComboBox2.Clear
Set c = ActiveSheet.Rows(1).Find(ComboBox1.List(ComboBox1.ListIndex, 2), LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
colonne = c.Column
For n = 3 To Worksheets("Page données").Cells(65536, colonne).End(xlUp).Row
ComboBox2.AddItem Worksheets("Page données").Cells(n, colonne)
Next n
End If
End Sub

Merci d'avance.
 
Dernière édition:

Discussions similaires

Réponses
3
Affichages
2 K

Statistiques des forums

Discussions
312 418
Messages
2 088 262
Membres
103 793
dernier inscrit
letocost