Liste déroulante en cascade avec fonction "INDIRECT"

  • Initiateur de la discussion Initiateur de la discussion Andy94
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Andy94

XLDnaute Nouveau
Bonjour à tous,

Petite question, est-il possible de faire une liste en cascade en passant par la fonction "INDIRECT" (Données/Validation/Liste - Dans source = INDIRECT() en utilisant des listes nommées qui se trouvent dans un autre classeur ?

Si oui quelle est la marche à suivre ?

Merci beaucoup.

Andréa
 
Re : Liste déroulante en cascade avec fonction "INDIRECT"

Bonjour,

Le classeur X.xls doit être ouvert:

-Créer un nom de champ:
-Insertion/Nom/Définir:
=[X.XLS]Feuil1!$A$1:$A$6

JB
Formation Excel VBA JB

Bonsoir,

Merci pour votre réponse.

C'est la formule que j'ai appliqué mais cela ne veut pas fonctionner, je ne vois pas du tout d'ou peut provenir le problème.

Sur la cellule B1 ou je vais créer ma liste en cascade (avec la fonction INDIRECT), j'applique votre méthode : Sur ma cellule B1, je crée un nom de champs en sélectionnant la plage de données dans mon deuxieme fichier xls. Ensuite, sur la même cellule B1, j'applique ma fonction INDIRECT (Données/validation/Liste = INDIRECT(A1). Et la il me met le message d'erreur suivant :

"La source est reconnue comme erronnée, voulez-vous continuer ?"

J'applique ma fonction Indirect par rapport à la cellule A1 : suivant le choix de cette cellule A1, la cellule B1 doit me faire une pré-sélection des infos.

J'ai recommencé une nouvelle fois, idem !

Je ne comprends pas pourquoi cela ne fonctionne pas. J'ai beau cherché, j'ai pas trouvé. Et j'aurai bien voulu imager mon problème en vous envoyant mon fichier excel mais je ne peux pas (il y a des données confidentielles dedans).
 
Re : Liste déroulante en cascade avec fonction "INDIRECT"

Bonjour,

Le problème des données confidentielles n'en est pas vraiment un.

Il suffit de remplacer les noms par des noms de héros de BD ou de cinéma.

Tu remplaces également les noms des produits par des carottes et de navets.

Ensuite, nous n'avons pas besoin de ton fichier complet. Un extrait doit suffire.

A te (re)lire

@+
 
Re : Liste déroulante en cascade avec fonction "INDIRECT"

Bonjour,

Le problème des données confidentielles n'en est pas vraiment un.

Il suffit de remplacer les noms par des noms de héros de BD ou de cinéma.

Tu remplaces également les noms des produits par des carottes et de navets.

Ensuite, nous n'avons pas besoin de ton fichier complet. Un extrait doit suffire.

A te (re)lire

@+

Bonjour,

Voici les tableaux.

J'explique mon problème :

Je voudrais faire des listes déroulantes et listes déroulantes en cascade avec une plage de données se trouvant dans un autre document excel (pour mes colonnes F : Forme (liste déroulante simple) - G : ml (Recherche V) - H : Nombre (Liste déroulante avec fonction INDIRECT par rapport au choix effectué en colonne F).

J'ai donc commencé par créer un nom de champ en colonne F (Forme) en faisant Insertion/Nom/Définir et j'ai sélectionné la plage de données dans mon autre feuille (le deuxième classeur est ouvert quand je fais les manipulations).

Dans mon deuxième classeur, j'ai nommé tous mes champs.

Ensuite quand je fais données/validation/liste et que je tape =Forme (pour faire une liste déroulante des différentes formes), il m'affiche le message suivant : "Vous ne devez pas faire référence à d'autres feuilles ou classeurs pour les critères Validation des données". Donc je ne peux pas faire ma liste en cascade en cellule H puisque cela dépend du choix en cellule F. Je n'ai pas pu également tester ma formule Recherche V en cellule G.

Egalement, quand les personnes vont pouvoir utiliser mon tableau, une fois que les listes fonctionneront, j'aimerai que les listes fonctionnent sans avoir besoin d'ouvrir mon deuxième document excel. Cela est-il possible ?

Merci encore de votre aide.
 

Pièces jointes

Re : Liste déroulante en cascade avec fonction "INDIRECT"

Bonjour,

Voici les tableaux.

J'explique mon problème :

Je voudrais faire des listes déroulantes et listes déroulantes en cascade avec une plage de données se trouvant dans un autre document excel (pour mes colonnes F : Forme (liste déroulante simple) - G : ml (Recherche V) - H : Nombre (Liste déroulante avec fonction INDIRECT par rapport au choix effectué en colonne F).

J'ai donc commencé par créer un nom de champ en colonne F (Forme) en faisant Insertion/Nom/Définir et j'ai sélectionné la plage de données dans mon autre feuille (le deuxième classeur est ouvert quand je fais les manipulations).

Dans mon deuxième classeur, j'ai nommé tous mes champs.

Ensuite quand je fais données/validation/liste et que je tape =Forme (pour faire une liste déroulante des différentes formes), il m'affiche le message suivant : "Vous ne devez pas faire référence à d'autres feuilles ou classeurs pour les critères Validation des données". Donc je ne peux pas faire ma liste en cascade en cellule H puisque cela dépend du choix en cellule F. Je n'ai pas pu également tester ma formule Recherche V en cellule G.

Egalement, quand les personnes vont pouvoir utiliser mon tableau, une fois que les listes fonctionneront, j'aimerai que les listes fonctionnent sans avoir besoin d'ouvrir mon deuxième document excel. Cela est-il possible ?

Merci encore de votre aide.

Petite info qui à son importance : J'utilise Excel 2003 au travail
 
Re : Liste déroulante en cascade avec fonction "INDIRECT"

Bonjour Andy94, JB, Tibo,

Suppososons que la liste des éléments se trouve dans le fichier Classeur1.xls.

Définir dans Classeur1.xls la plage par le nom Liste.

Puis dans le fichier où vous voulez créer la liste de validation, définir le nom Forme par la formule :

=Classeur1.xls!Liste

La liste de validation sera définie par la formule :

=Forme

A+
 
Dernière édition:
Re : Liste déroulante en cascade avec fonction "INDIRECT"

Bonjour Andy94, JB, Tibo,

Suppososons que la liste des éléments se trouve dans le fichier Classeur1.xls.

Définir dans Classeur1.xls la plage par le nom Liste.

Puis dans le fichier où vous voulez créer la liste de validation, définir le nom Forme par la formule :

=Classeur1.xls!Liste

La liste de validation sera définie par la formule :

=Forme

A+

Bonjour,

Je viens d'essayer et cela fonctionne quand (si je reprends ton exemple) classeur1.xls est ouvert.Par contre quand il est fermé la liste ne fonctionne plus.

Y'a t-il un moyen pour que cela fonctionne même quand le classeur ou se trouve ma plage de données est fermé ?

Merci
 
Re : Liste déroulante en cascade avec fonction "INDIRECT"

Re,

Là Andy vous en demandez beaucoup.

Trop... pour Excel.

C'est déjà pas mal qu'on arrive à faire ça sur un fichier ouvert, non ???

Edit : pour être un peu plus précis, si l'on essaie de se passer de Liste en définissant Forme par exemple par :

=[Classeur1.xls]Feuil1!$A$1:$A$10

eh bien la validation n'est plus possible, même si le classeur est ouvert.

A+
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
6
Affichages
130
Réponses
40
Affichages
1 K
Réponses
1
Affichages
458
Réponses
4
Affichages
837
Retour