Tu as tout à fait raison, ce serait beaucoup plus simple avec le fichier.
J'avais parlé de "liste_lundi" pour essayer de simplifier le problème au maximum.
Pour faire simple :
Dans l'onglet "Paramètres", j'ai placé une liste de "fonction" dans la colonne A et une liste de "cours" dans la colonne B. Dans la colonne C, je choisis manuellement la fonction qui correspond au cours de la colonne précédente.
Ensuite dans la colonne D, je place une liste de noms.
Dans les colonnes de G à Z j'ai mis en entête les noms des cours et juste en dessous, les professeurs qui peuvent donner ces cours (noms de la colonne D).
Dans l'onglet "Attributions 2021-2022" :
J'ai des cours dans la colonne A. La fonction du cours qui apparaît automatiquement dans la colonne B (avec la fonction rechercv) et ensuite dans la colonne C j'aimerais une liste déroulante (et c'est là que j'utilise la fonction indirect car la liste déroulante doit me permettre de choisir parmi la liste de profs qui peuvent donner ce cours).
La fonction indirect ne fonctionne pas si j'utilise =DECALER($C$2;;;NBVAL($C:$C)-1;1) pour délimiter les plages.
Dans le fichier "test" que j'ai joint, j'ai utilisé cette formule pour nommer la plage "français" et le menu déroulant ne fonctionne pas dans la cellule C6.
J'espère que j'ai été plus clair (mais je me rends compte que ce n'est pas très simple).