Bonjour Yann,
Content que ça convienne!
Si tu as l'occasion de tenter de m'expliquer comment tu as fait je suis preneur.
Le principe est le suivant :
* une seule "combobox" masquée qui s'affiche dans la cellule sélectionnée,
* qui se masque après avoir choisi un item dans la liste et la valeur s'inscrit alors dans la cellule,
* en fonction de la colonne on utilise l'une ou l'autre des listes, (=> cf code de la feuille "Planning")
* la liste s'établit en fonction de la colonne et des valeurs déjà existantes dans le planning via la requête Sql suivante :
Req = "SELECT (`" & Head(cl) & "`)" & _
" FROM [Feuil1$A1:E100] " & _
" WHERE NOT ISNULL(`" & Head(cl) & "`)" & _
" AND `" & Head(cl) & "` NOT IN " & _
" (SELECT `" & Hea2(cl) & "` FROM [PLANNING JOURNALIER$A2:D51] " & _
" WHERE NOT ISNULL(`" & Hea2(cl) & "`))"
Ce qui peut se traduire en clair par une commande du genre "Afficher la liste des chauffeurs de la 'Feuil1' dont les noms ne sont pas inclus dans la liste des équipages du 'Planning'" (=> cf code du module Sql). Le tout avec un ptit bricolage car les intitulés de colonnes ne sont pas tout à fait identiques dans les 2 onglets (d’où les array Head et Hea2).
Pierre