Carol a demandé s’il existe un moyen dans Excel de créer des listes déroulantes afin que la deuxième liste déroulante dépende de la sélection effectuée dans la première liste déroulante.

Il existe en fait un certain nombre de façons différentes d’accomplir cette tâche, allant des formules simples aux macros complexes. La méthode que vous choisissez dépend, le plus directement, du type de listes déroulantes que vous souhaitez créer. Il existe en fait trois types de listes déroulantes que vous pouvez créer dans Excel:

Listes de validation . * Si vous souhaitez limiter l’entrée dans certaines cellules, vous pouvez créer des listes de validation déroulantes.

Listes de formulaires . * Vous pouvez utiliser les outils Formulaires (lien: / excelribbon-Displaying_Excels_Developer_Tab [onglet Développeur] du ruban, groupe Contrôles, outil Insérer) pour créer des listes déroulantes. Ce sont très bien si vous allez créer un formulaire Excel protégé.

Userforms . * Ce sont des boîtes de dialogue, créées dans l’éditeur VBA. Vous «exécutez» un formulaire utilisateur en l’appelant à partir d’une macro. C’est la forme d’interface utilisateur la plus polyvalente, car elle vous donne la plus grande latitude dans ce que l’utilisateur voit. (Il nécessite également les connaissances les plus avancées d’Excel pour créer.)

Plutôt que de discuter de la façon de créer des listes déroulantes dépendantes basées sur chacun de ces types de listes déroulantes, je choisirai d’examiner la méthode la plus simple, qui suffira à la plupart des gens. Si vous utilisez la fonction INDIRECT avec des listes de validation de données, il est assez facile d’obtenir le résultat souhaité:

  1. Sur une feuille de calcul vierge de votre classeur, créez une liste des éléments qui figureront dans la première liste déroulante. Par exemple, créez une liste des départements de votre entreprise, tels que Ventes, Recherche, Direction, Production, etc. (Il doit s’agir d’entrées d’un seul mot dans la liste.)

  2. Sélectionnez la liste des éléments que vous avez créés à l’étape 1 et nommez la plage en utilisant un nom tel que «Départements».

  3. Sur la même feuille de calcul, créez une liste d’éléments qui pourraient apparaître dans la liste déroulante secondaire. Il devrait y avoir une liste pour chaque entrée dans la liste que vous avez faite à l’étape 1. Par exemple, vous pouvez créer une liste de personnel de vente, une liste de personnel de recherche, etc.

  4. Liste par liste, sélectionnez les listes que vous avez créées à l’étape 3. Donnez à chaque liste un nom d’un seul mot qui correspond aux noms utilisés dans la liste à l’étape 1, c’est-à-dire Ventes, Recherche, Exécutif, etc.

  5. Basculez vers la feuille de calcul dans laquelle vous souhaitez afficher les listes déroulantes.

  6. Sélectionnez les cellules dans lesquelles les utilisateurs devraient pouvoir saisir des éléments de votre première liste – celle créée à l’étape 1.

  7. Affichez l’onglet Données du ruban.

  8. Cliquez sur l’option Validation des données dans le groupe Outils de données. Excel affiche la boîte de dialogue Validation des données. (Voir la figure 1.)

  9. À l’aide de la liste déroulante Autoriser, choisissez Liste.

  10. Dans la zone Source, entrez un signe égal suivi du nom que vous avez créé à l’étape 2. Par exemple, = Départements.

  11. Cliquez sur OK. Vous avez maintenant spécifié que seules les informations de votre première liste peuvent être entrées dans les cellules que vous avez sélectionnées à l’étape 6.

  12. Sélectionnez les cellules dans lesquelles les utilisateurs doivent pouvoir saisir des éléments à partir des listes dépendantes. Par exemple, sélectionnez les cellules juste à droite des cellules que vous avez sélectionnées à l’étape 6.

  13. Affichez l’onglet Données du ruban.

  14. Cliquez sur l’option Validation des données dans le groupe Outils de données. Excel affiche à nouveau la boîte de dialogue Validation des données.

  15. À l’aide de la liste déroulante Autoriser, choisissez Liste.

  16. Dans la zone Source, entrez une formule qui utilise la fonction INDIRECT. Si la première cellule de la plage sélectionnée à l’étape 11 est la cellule B3 et que vous voulez que cette première cellule dépende de ce qui est choisi dans la cellule A3, vous utiliserez la formule suivante:

  17. Cliquez sur OK.

C’est ça. Désormais, les utilisateurs ne peuvent choisir dans votre liste principale que s’ils utilisent l’une des cellules spécifiées à l’étape 6 et dans les listes dépendantes appropriées s’ils choisissent l’une des cellules à l’étape 12.

Il existe de nombreuses variantes de cette approche (utilisant la validation des données). Vous pouvez trouver plus d’informations sur certaines de ces approches en visitant ces pages Web:

http://www.ozgrid.com/download/ (download the MatchingLists.zip file)

http://www.contextures.com/xlDataVal02.html

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (10545) s’applique à Microsoft Excel 2007 et 2010. Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu d’Excel ici:

link: / excel-Creating_Dependent_Drop-Lists [Création de Drop-Lists dépendants].