Remplir tabelau en fonction d'une combobox

Bonjour,

Voila je reviens vers vous car j'ai un petit soucis

Voila en faite j'ai une userfom avec une combobox qui m'affiche une liste de marques de véhicules qui se situe sur la feuil nommé "Base de donnée" et une textbox ou la je note le modèle de la marque

en faite je voudrais que quand je sélectionne la marque dans ma combobox que sa récupère la colonne a la quel est correspond et que ensuite quand je note le modèle et que je valide ma userfom que le modèle s'enregiste dans la feuil"Base de donnée" dans la bonne correspondante a la marque voila j'espere que j'ai été assez clair dans mes explication merci

Bonjour

A tester

Merci Banzai c'est se que je voulais est se possible que tu me rajoute des commentaires sur le code que tu ma ajouté pour mieux le comprendre ? merci

Bonjour,

Avec le code ci-dessous tu fais d'une pierre deux coups. Si une nouvelle marque est tapée dans la combobox, la marque est ajoutée à la liste (plus le modèle en dessous si il y en a un), sinon, le modèle est ajouté dans la bonne colonne.

Private O As Worksheet 'déclare la variable O (Onglet)

Private Sub UserForm_Initialize() 'à l'initialisation de l'UserForm
Dim I As Integer 'déclare la variable I (Incrément)

Set O = Sheets("base de donnée") 'définit l'onglet O
'boucle sur toutes les colonnes éditées de la première ligne de l'onglet O
For I = 1 To O.Cells(1, Application.Columns.Count).End(xlToLeft).Column
    ComboBox_Marque.AddItem O.Cells(1, I) 'ajoute la valeur de la cellule ligne 1 colonne I à la combobox [ComboBox_Marque]
Next I 'prochaine colonne de la boucle
End Sub

Private Sub CommandButton_Ajouter_Click() 'bouton "Ajouter"
Dim COL As Integer 'déclare la variable COL (COLonne)

If Me.ComboBox_Marque.ListIndex = -1 Then 'condition : si nouvelle marque
    COL = O.Cells(1, Application.Columns.Count).End(xlToLeft).Column + 1 'définit la colonne COL
    O.Cells(1, COL).Value = Me.ComboBox_Marque.Value 'renvoie la marque dans la ligne 1
    O.Cells(2, COL).Value = Me.TextBox_Modèle.Value 'renvoie le modèle dans la line 2
    Exit Sub 'sort de la procédure
End If 'fin de la condition
COL = Me.ComboBox_Marque.ListIndex + 1 'définit la colonne COL
'renvoie le modèle dans la première ligne vide de la colonne COL
O.Cells(Application.Rows.Count, COL).End(xlUp).Offset(1, 0).Value = Me.TextBox_Modèle
Unload Me 'vide et ferme l'UserForm
End Sub

[Édition]

Bonjour Banzai on s'est (encore) croisé...

50p2c56-v01.xlsm (50.15 Ko)

merci thau encore mieux merci a vous deux vous êtes super efficace en tout cas merci encore

Rechercher des sujets similaires à "remplir tabelau fonction combobox"