Tout repose sur un tableau structuré bien construit. Chaque en-tête de colonne est un choix de la première liste (Payée, En attente, Impayée), et chaque colonne contient les choix de la seconde qui lui correspondent : les délais de paiement sous En attente, les relances sous Impayée.
Première liste, celle du statut : sa source est la ligne d’en-têtes du tableau, =INDIRECT("Tableau2[#En-têtes]"). Ajouter une colonne au tableau ajoute donc un statut.
Seconde liste, celle de la précision : sa source se construit à partir du statut choisi sur la même ligne, =INDIRECT("Tableau2[" & D4 & "]"). Si D4 contient « Impayée », INDIRECT renvoie la colonne Tableau2[Impayée], et la liste ne propose que les relances. La formule s’écrit pour la première ligne, sans dollar devant le 4 : chaque ligne lit son propre statut.