Google Sheet est très certainement le meilleur tableur sous ChromeOS. Comme Excel il permet de résoudre de nombreux calcul redondant. Aujourd’hui nous allons voir comment faire une liste déroulante conditionnelle sous Google Sheet .
Ce qui est intéressant dans les listes déroulantes c’est de pouvoir avoir accès à des données présélectionnées, ce qui évite les erreurs de saisies, si vous ne savez pas comment réaliser votre premier liste déroulante sur Google Sheet allez faire un tour sur mon tutoriel.
Maintenant je vais vous montrer comment changer le contenu d’une liste déroulante en fonction de la saisie d’une autre !
Faire notre premier liste déroulante sur Google Sheet
En un premier temps nous allons créer notre première liste déroulante, pour rappel :
- Rendez vous sur le menu Données
- Puis cliquez sur Validation
- Enfin dans critères choisissez Liste créée à partir d’une plage
- Sélectionnez la plage de votre choix, dans notre cas nous choisirons les données présentes de la Cellule C1 à C98 ( pour choisir les différentes Fournisseurs )
Notre première liste est faite, c’est maintenant que nous allons utiliser une nouvelle fonction nommée FILTER()
Comment fonctionne la fonction FILTER()
Cette fonction permet de filtrer une liste de données en fonction d’un item spécifié.

Nous avons fait notre première liste dans la cellule A2 nous allons dans la cellule D2 ajouter la formule FILTER() pour cela il faut:
- Commencer par saisir le symbole « = » ce qui indique à Google sheet que vous allez utiliser une fonction
- Ensuite saisissez FILTER, et vous ouvrez la parenthèse
- Sélectionnez la plage que vous souhaitez filtrer ( dans votre cas la dénominations des produits Stock!B2:B98)
- Ajouter le « ; » pour indiquer que vous passez à une autre étape
- Sélectionnez la plage qui servira de données filtre. Pour nous la colonne Stock!C2:C98 qui correspond à nos Fournisseurs
- Enfin nous allons comparer la colonne Stock!C2:C98 à la donnée qui apparaît dans notre première liste déroulante, pour cela ajouter « = » et la cellule A2
- Ensuite fermer votre parenthèse
Tout ceci vous donne la formule suivante :
=FILTER(Stock!B2:B98;Stock!C2:C98=A2)
Seconde liste déroulante conditionnée :
Vous avez pu le constater lorsque vous sélectionnez une valeur dans la première liste déroulante automatiquement le contenu de la colonne D change en fonction de votre choix.
Il ne nous reste plus qu’a réaliser notre seconde liste déroulante conditionnée à la première, c’est très simple, procédez comme la premier:
- Rendez-vous sur le menu Données
- Puis cliquez sur Validation
- Enfin dans critères choisissez Liste créée à partir d’une plage
- Sélectionnez la plage de votre choix, dans notre cas nous choisirons les données présentes de la colonne D précedemment remplie
Tutoriel vidéo pour réaliser une liste déroulante conditionnelle sous Google Sheet
Il existe évidemment une autre solution pour des listes plus complexes, mais il vous faudra beaucoup, beaucoup plus de temps pour les faire..
Avez-vous eu recours à ce tutoriel? Avez-vous des questions, des remarques? Laissez-moi votre avis dans la suite de cet article à travers vos commentaires
Bonjour,
Merci pour ce tuto très simple qui marche très bien sur une cellule.
Je cherche à reproduire ce filtre dynamique sur plusieurs lignes d’un tableau avec à chaque fois les mêmes valeurs que sur la ligne n°1.
Pourrez-vous m’aider ?
Merci d’avance
Bonjour,
il existe une solution très simple qui est d’utiliser la fonction transpose() en y empaquetant la fonction filtre au bout de la ligne ou tu veux faire ton menu déroulant conditionnel :
=TRANSPOSE(filter(Stock!$B$2:$B;Stock!$C$2:$C=A24))
Pas de réponse pour afficher des listes déroulantes filtrées pour chaque ligne?!
C’est le seul intérêt de cette fonction…
Pour reprendre l’exemple, Tropical A2 avec Clémentine, je crée une ligne A3 avec Salveole et je choisis Salsifie, je crée une ligne A4 avec Fruitas et je choisis Cerise, etc…
Merci d’avance.
Bonjour la réponse a déjà été donnée à plusieurs reprises, ce n’est pas possible avec cette méthode. Il faut utiliser les macros pour cela
Bonjour, comment faire cela pour plusieur categories ?
Merci a vous
Bonjour,
Comme beaucoup de personnes j’aimerais propager ces listes déroulantes à plusieurs lignes. Voici le lien correspondant à mon fichier:
https://docs.google.com/spreadsheets/d/12XhufjHk7qW3tJ-aubYdp48-CP0065rfqr3OoCMULd4/edit?usp=sharing
Merci d’avance!
Merci pour ce partage ! Même question, comment étendre cette formule à plusieurs lignes?
+1
Pour dupliquer le menu conditionnel sur toutes les lignes il sera nécessaire d’utiliser les macros, impossible de le faire sans cela
Merci, c’est toujours important les piqûres de rappel !
Encore une fois simple mais je trouve cette solution assez efficace :)
Bonjour,
comment appliquer cela à plusieurs lignes ? … Cela me semble essentiel à l’utilité de la méthode !!
Bonsoir, quand tu parles d’appliquer à plusieurs ligne tu veux dire créer un menu déroulant sur la ligne 1, 2, 3 …. avec des contenu différent ? Pour que je comprends la question correctement, peux tu me partager une feuille avec le résultat que tu aimerais ? pour le partage mygsm.fr@gmail.com
Encore merci
Bonjour,
Tutoriel tres pedagogique et methode en effet facile et rapide d’utilisation, Merci!
Neanmoins meme interrogation sur la difficulté d’étendre la creation de la liste conditionnelle sur une plage en colonne B.
La premeire liste deroulante créée sur une plage en colonne A fonctionne en revanche bien
Bien Cdlt!
Bonjour, merci pour ce tutoriel! même question en effet que Emilie & Co.
Par exemple dans un journal d’achat pour me permettre in fine de gérer mon stock en fonction des ventes:
https://docs.google.com/spreadsheets/d/1ahHF2i8a0qF8qR4S4j6rfusBWycZ5u2U0XxwKsSnLJM/edit#gid=0
Pour chaque achat, je cherche à renseigner le fournisseur, puis la référence EN FONCTION du fournisseur précédemment sélectionner puis la couleur EN FONCTION de la référence et donc du fournisseur (J’ai toutes mes listes produits/fournisseurs dans l’onglet LISTE)
Et je liste chaque achat les uns après les autres (donc ligne par ligne) avec ces informations avec menus déroulants en colonnes…
d’où la question « comment appliquer votre méthode sur plusieurs lignes » ? sans passer par du script :/ … j’ai l’impression que c’est pas possible…
Merci en tout cas pour votre retour et votre point de vue ?
je viens de te demander l’accès au fichier pour essayer de trouver une solution .. merci du partage
Bonjour, Merci pour ce tutoriel super pratique mais comment appliquer cela a plusieurs lignes ? Merci de votre réponse…
Tutoriel bien pratique en effet !
Mais je me pose la même question que d’autres, comment appliquer cette méthode à plusieurs lignes ?
Sur excel, on peut aisément le faire avec la fonction indirect, mais je ne trouve pas d’équivalence sur sheet. Une idée ?
Avez-vous eu une réponse ? Merci.
À force de recherches j’ai trouvé que la fonction indirect dans une liste déroulante n’existe pas sur sheet !
J’ai même créé les listes déroulantes sur excel puis importé sur sheet, ça ne fonctionne pas, la deuxième liste reste en « chargement ».
Donc pas de solution à notre problème, on ne peut pas créer de liste déroulante en cascade sur sheet…
Hello , désolé de n’être pas intervenu plus tôt dans les commentaires, mais je ne comprends pas exactement ce que vous voulez faire .. qu’est ce qu’une liste déroulante en cascade ? pouvez vous me donnez l’accès à une page sheet avec l’exemple de ce que vous voulez faire , je regarde si je peux vous aider
En fait dans ma version excel, la formule filter n’existe pas. ceci me donne un message d’error….je faire excatment cette operation. Savez-vous une autre facon de faire?
Merci
Attention ce tutoriel n’est pas pour excel mais pour Google Sheet l’équivalent d’excellent de chez Google, effectivement cette fonction n’existe pas sous Excel
Merci pour ce tutoriel, mais exactement même question que Giraudo… multiplier la liste déroulante et la décliner!
Bonjour, savez-vous si l’on peut avoir un menu déroulant à partir d’images ? genre une pomme, une bannane, etc.
J’ai vu un tutoriel passer sur le net, mais n’ai aucune idée de comment le faire .. désolé
Bonjour,
Même question que giraudo, y-aurait-il une méthode permettant d’étendre ce procédé à plus d’une ligne ?
Merci !
Pour vous apporter mon aide, pouvez vous me partager la feuille de calcul ou vous voulez réaliser cette vue filtré ? avec un exemple de ce que vous voulez réussir a faire ?
Super comme tutoriel, je me demandais, j’essaie d’utiliser mes listes déroulantes à partir d’une autre feuille de calcul, dans le même fichier, mais simplement une autre feuille. Seulement voilà ça ne fonctionne pas, lorsque je fais les listes, le filtre et tout dans la même feuille, ça marche numéro un, mais si j’essaie de ramener cela dans une autre feuille, la liste qui devrait être la ‘liste conditionnée’ ne veux pas suivre, je n’obtiens que le résultat des cellules de la liste filtre si par exemple j’avais sélectionné une donné à partir de ma première liste dans la feuille de calcul dans laquelle j’essaie d’importer ma liste conditionnée. Donc je sélectionne une cellule dans ma feuille ‘destinataire’ je rentre la validation à partir de ma feuille d’origine, ensuite, dans ma feuille d’origine j’ai déjà au préalable mis en opération ma liste ‘filtre’, maintenant je vais dans ma feuille ‘destinataire’ je sélectionne une autre cellule, destiné à devenir la liste conditionnée, je sélectionne une plage à partir de la liste ‘filtré’ dans la feuille d’origine…. et ça ne marche pas… pourquoi?
Merci bien :)
Bonjour,
Même question que giraudo, y-aurait-il une méthode permettant d’étendre ce procédé à plus d’une ligne ?
Merci !
Bonjour,
Comment fait on pour dérouler la formule de la liste déroulante sur toute une colonne ?
B2 doit m’afficher la liste en fonction de A1
B3 doit m’afficher la liste en fonction de A2
etc…
Merci d’avance !
Il existe la fonction INDIRECT() qui fonctionne bien avec Excel, mais sous Google Sheet ça affiche tout d’un coup. C’est dommage