5 combobox avec listes différentes. 1 seule cellule a remplir selon choix

Résolu
#jquem# Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Je souhaite remplir une cellule (AI) via une combobox.
J'ai 6 combo différentes. je les rend apparentes unitairement après avoir fait le choix d'une de ces dernières dans une autre combo.
Mon codage n'est pas bon et n'accepte que les valeurs d'une seule liste, en l'occurence la dernière dans le codage.

Private Sub BtnAjout_Click()
Dim g As Integer
g = Range("AH" & Rows.Count).End(xlUp).Row
Range("AH" & g + 1).Value = ComboBox6
Range("AI" & g + 1).Value = ComboBox7
Range("AI" & g + 1).Value = ComboBox14
Range("AI" & g + 1).Value = ComboBox17
Range("AI" & g + 1).Value = ComboBox16
Range("AI" & g + 1).Value = ComboBox15
Range("AI" & g + 1).Value = ComboBox18
Range("AJ" & g + 1).Value = ComboBox8
Range("AK" & g + 1).Value = ComboBox9
Range("AL" & g + 1).Value = TextBox2
Range("AM" & g + 1).Value = ComboBox12
Range("AN" & g + 1).Value = ComboBox10
Range("AO" & g + 1).Value = TextBox1


'Remet toutes les fenêtres des infos à O après saisie et click (FORMULE VALIDE)
ComboBox7 = ""
ComboBox8 = ""
ComboBox9 = ""
ComboBox10 = "-"
ComboBox14 = ""
ComboBox15 = ""
ComboBox16 = ""
ComboBox18 = ""
ComboBox18 = ""
TextBox1 = "-"
TextBox2 = "-"
MsgBox "Les informations saisies ont bien été enregistrées. Merci."
End Sub

Les combo concernées sont les 7-14-15-16-17-18
Je pense qu'elles sont "lues" l'une après l'autre et que la dernière efface l'avant dernière et ainsi de suite...
Quelqu'un pourrait-il corriger ce défaut afin que la cellule puisse récupérer par exemple la valeur de la combo16 si cette dernière a été choisie?

Merci pour votre aide.
A voir également:

7 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, je ne comprends pas.
AI est une colonne, pas une cellule.
tu commences par écrire "une combobox", puis, à la ligne suivante, il y en a 6.
n'imagine surtout pas que ton code va nous aider à comprendre ce que tu veux obtenir.
1
#jquem# Messages postés 74 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
Effectivement, AI n'est pas une cellule, désolé...
C'est effectivement une colonne. Je souhaite juste remplir automatiquement un tableau (appelé "ListeSource" dans "Tableau de bord").
Pour toutes les autres colonnes "AH >AO" sauf AI, les codes fonctionnent et le tableau se remplit normalement.
Comme je l'explique plus haut, je suis confronté pour le remplissage de cette colonne à un choix multiple de listes déroulantes ayant bien sur, des codes différents. Chaque liste représente un "groupe de travail différent" (Business Unit). Le trop grand nombre de références m’empêche de n'avoir qu'une liste (trop lourde et démotivante pour les potentiels utilisateurs).

Je te joins mon fichier afin de mieux comprendre ma problématique.
https://mon-partage.fr/f/c7m4NHic/

PS : j'avais mis mon code mais sans grand espoir... vues mes connaissances, je préfère jouer l'humilité.
Merci pour ton aide.
0
#jquem# Messages postés 74 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai juste oublié de préciser que toutes les références, qu'importe la liste déroulante d'où elles proviennent, doivent venir alimenter les cellules de la colonne AI.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
veux-tu que la cellule en AI récupère la valeur d'une des combobox 7-14-15-16-17-18, une où il y a une valeur non nulle?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
veux-tu que la cellule en AI récupère la valeur d'une des combobox 7-14-15-16-17-18, une où il y a une valeur non nulle?
si c'est cela, une suggestion, avec juste 7 et 14:
If Me.ComboBox7 <> "" Then
    Range("AI" & g + 1).Value = Me.ComboBox7
ElseIf Me.ComboBox14 <> "" Then
    Range("AI" & g + 1).Value = Me.ComboBox14
End If
0
#jquem# Messages postés 74 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
Je pense que tu as bien cerné ma problématique.
Effectivement, je cherche à récupérer en AI la valeur d'une des 6 combobox où il y a une valeur non nulle.

Comme tu peux le constater dans le tableau, cette colonne collecte les divers codes produits de chaque BU. Les autres valeurs sont communes (dates, code client, prix, etc...).

Le formulaire ne permettra que de saisir des valeurs correspondantes à la BU sélectionnée (par l'intermédiaire de la combobox6). Je vais mettre les 6 combo les unes sur les autres et, seule apparaitra la liste déroulante sélectionnée par la combo6.

Merci encore pour ton aide. Je dois présenter un fichier fini à mon boss la semaine prochaine. Je pense qu'on y sera.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
as-tu pu adapter ma suggestion pour finaliser?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
#jquem# Messages postés 74 Date d'inscription   Statut Membre Dernière intervention  
 
Génial ! Ça fonctionne apparemment très bien !
Je suppose qu'il me faut ajouter le même code pour les autres combo dont je veux extraire les codes ?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
exact, tu rajoutes des copies des lignes 3 et 4 avant la ligne 5.
0
#jquem# Messages postés 74 Date d'inscription   Statut Membre Dernière intervention  
 
Je reprends tes codes

If Me.ComboBox7 <> "" Then
Range("AI" & g + 1).Value = Me.ComboBox7
ElseIf Me.ComboBox14 <> "" Then
Range("AI" & g + 1).Value = Me.ComboBox14
End If

J'ai compris qu'il faut rajouter avant End If. Par contre pour les combos supplémentaires, je dois commencer pour chaque par "ElseIf" ?
0
#jquem# Messages postés 74 Date d'inscription   Statut Membre Dernière intervention  
 
Inutile de répondre à ma question précédente.

CA MARCHE !!!!

Je ne peux que dire Merci, merci, merci.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
parfait, peux-tu alors marquer la discussion comme résolue?
0