Liste déroulante "dynamique"

Dans tous les cas, fais le tri sur la colonne E sinon tu auras des résultats aberrants.

Bonjour,

Si je tri les données j'obtiens 9 et 10 en résultats.

Si j'enlève -1 j'ai donc 10 et 10.

Ce qui me pose problème c'est qu'Excel ne parvient pas à trouver "choix" quand je fais une liste déroulante.

J'indique bien =choix ; peut-être qu'il faut préciser qu'il doit aller rechercher les information dans le cadre, contenant la formule ?

Il est dans un cadre à part (comme vous l'aviez fait). Si je le place dans une cellule, ça ne donne rien de bon.

Bonne journée.

Bonjour,

il manque un ; dans la formule

=DECALER(Feuil1!$F$1; EQUIV(Feuil2!A17;Feuil1!$E:$E;0) ; ; EQUIV(Feuil2!A17;Feuil1!$E:$E;1) - EQUIV(Feuil2!A17;Feuil1!$E:$E;0) +1)

Salut,

Désolé pour le temps de réponse, j'ai eu des soucis ces derniers temps.

J'ai testé ta solution, à priori ça fonctionne, mais je vais probablement revenir rapidement quand j'aurais terminé de nettoyer ma base de données.

Merci !

Bonne journée !

Bonjour,

Finalement, je ne parviens pas à refaire ce que vous avez fait sur le document test.

Est-ce qu'il est possible de m'expliquer comment vous avez procédé ?

Sur mon document "choisir ->" n'apparaît pas lorsque deux codes sont identiques.

Lorsque je souhaite faire utiliser l'outil "validation des données" pour créer une liste, j'ai une erreur m'indiquant que la source est reconnue comme erronée ou qu'il n'arrive pas à trouver la plage de données.

La formule qui se trouve dans la zone de texte :

choix = =DECALER(Database!$AQ$1; EQUIV(Correspondances!A17;Database!$AP:$AP;0) ; ; EQUIV(Correspondances!A17;Database!$AP:$AP;1) - EQUIV(Correspondances!A17;Database!$AP:$AP;0) +1)

Est-ce qu'elle a subit un autre traitement ? Elle est simplement dans une zone de texte ?

Pour info :

J'ai cette formule pour mettre en évidence les cellules qui ont des doublons :

=SI(NB.SI(Database!$E$2:$E$22127;A2)>1;"choisir ->";RECHERCHEV(A2;Database!$AP$2:$AQ$22127;2;FAUX))

Et pour proposer une liste de choix :

choix

=DECALER(Database!$AQ$1; EQUIV(Correspondances!A17;Database!$AP:$AP;0) ; ; EQUIV(Correspondances!A17;Database!$AP:$AP;1) - EQUIV(Correspondances!A17;Database!$AP:$AP;0) +1)

Merci beaucoup à Steelson pour les formules.

Les 3 EQUIV donnent les mêmes résultats, à savoir : 37

J'ai ce message d'erreur :

"Impossible de trouver une plage de données que vous avez nommée"

Lorsque j'indique choix dans la fenêtre de validation des données en autorisant la "liste".

Merci de votre attention.

Bonne journée.

Wahou, c'est peu ancien tout ceci.

Peux-tu reposter un fichier simplifié mais qui est suffisamment complet pour mettre en évidence le soucis ?

Je fais ça de suite.

Le voici en Pj.

Alors bizarrement les 3 equiv ne donnent plus 37 ; l'un donne 35 et les 2 autres #N/A sur ce document.

Il n'y a pas de Abie sibi dans ta base !

J'ai supprimé les lignes, ce n'est pas important dans ce cas de figure.

Les autres lignes sont bonnes.

Ah, donc c'est ok ou il y a autre chose à corriger ?

Eh bien ceci :

Finalement, je ne parviens pas à refaire ce que vous avez fait sur le document test.

Est-ce qu'il est possible de m'expliquer comment vous avez procédé ?

Sur mon document "choisir ->" n'apparaît pas lorsque deux codes sont identiques.

Lorsque je souhaite faire utiliser l'outil "validation des données" pour créer une liste, j'ai une erreur m'indiquant que la source est reconnue comme erronée ou qu'il n'arrive pas à trouver la plage de données.

La formule qui se trouve dans la zone de texte :

choix = =DECALER(Database!$AQ$1; EQUIV(Correspondances!A17;Database!$AP:$AP;0) ; ; EQUIV(Correspondances!A17;Database!$AP:$AP;1) - EQUIV(Correspondances!A17;Database!$AP:$AP;0) +1)

Est-ce qu'elle a subit un autre traitement ? Elle est simplement dans une zone de texte ?

Pour info :

J'ai cette formule pour mettre en évidence les cellules qui ont des doublons :

=SI(NB.SI(Database!$E$2:$E$22127;A2)>1;"choisir ->";RECHERCHEV(A2;Database!$AP$2:$AQ$22127;2;FAUX))

Et pour proposer une liste de choix :

choix

=DECALER(Database!$AQ$1; EQUIV(Correspondances!A17;Database!$AP:$AP;0) ; ; EQUIV(Correspondances!A17;Database!$AP:$AP;1) - EQUIV(Correspondances!A17;Database!$AP:$AP;0) +1)

Merci beaucoup à Steelson pour les formules.

Les 3 EQUIV donnent les mêmes résultats, à savoir : 37

J'ai ce message d'erreur :

"Impossible de trouver une plage de données que vous avez nommée"

Lorsque j'indique choix dans la fenêtre de validation des données en autorisant la "liste".

Merci de votre attention.

J'ai beau avoir fait tout comme il faut, ça veut pas fonctionner.

Je n'ai pas la mention "choisir" qui apparaît lorsque j'ai des codes identiques.

J'ai toujours l'erreur "Impossible de trouver une plage de données que vous avez nommée".

J'espérais que vous m'expliquiez la démarche que vous avez suivi pour créer une liste de propositions, étant donné que ce que je fait ne donne rien de bon. Excel ne comprend pas où sont les données ; il ne trouve pas ceci :

"choix

=DECALER(Database!$AQ$1; EQUIV(Correspondances!A17;Database!$AP:$AP;0) ; ; EQUIV(Correspondances!A17;Database!$AP:$AP;1) - EQUIV(Correspondances!A17;Database!$AP:$AP;0) +1)"

EDIT :

Voilà j'ai finalement réussi à faire fonctionner la première formule, j'ai donc barré en rouge ce qui ne pose plus de problème.

Bonne soirée,

à plus tard.

Positionne toi sur une cellule de la colonne 2 ( car le 2 de la formule ci-dessous est variable : pas précédé de $)

Définis Choix comme suit

=DECALER(Database!$AQ$1; EQUIV(Correspondances!$A2;Database!$AP:$AP;0); ; EQUIV(Correspondances!$A2;Database!$AP:$AP;1) - EQUIV(Correspondances!$A2;Database!$AP:$AP;0) +1)
capture d ecran 161

Ensuite définis une validation des cases

capture d ecran 162

et tire la case vers le bas

et le tour est joué

capture d ecran 163

Merci beaucoup ! En effet, désormais ça fonctionne.

Il reste un petit soucis qui est que dans la liste déroulante, les choix sont proposés en "décalés". C'est à dire que lorsque 2 codes sont identiques, il propose 1 résultat potentiellement bon et le résultat d'en dessous, qui ne correspond pas.

Ex :

Rese lute : Reseda luteola L., 1753 - RESEDA LUTEOLA L., 1753

Reseda luteola subsp. crispata (Link) Arcang., 1882 - RESEDA LUTEOLA SUBSP. CRISPATA (LINK) ARCANG., 1882

Il devrait proposer

Reseda lutea L., 1753 - RESEDA LUTEA L., 1753

Rese lute : Reseda luteola L., 1753 - RESEDA LUTEOLA L., 1753

Ce résultat :

Reseda luteola subsp. crispata (Link) Arcang., 1882 - RESEDA LUTEOLA SUBSP. CRISPATA (LINK) ARCANG., 1882

est situé juste en dessous et correspond au code : Rese lute ssp. cris

Il y a donc un décalage vers le bas, je vais voir si je trouve ce qui pose problème. (mais si vous avez une idée je suis preneur haha !)

Merci encore !

Bonne journée.

Désolé

C'est corrigé

=DECALER(Database!$AQ$1; EQUIV(Correspondances!$A2;Database!$AP:$AP;0)-1; ; EQUIV(Correspondances!$A2;Database!$AP:$AP;1) - EQUIV(Correspondances!$A2;Database!$AP:$AP;0) +1)

Oh, cela venait du -1 manquant donc. J'ai du le modifier sans m'en rappeler...

Un grand merci !

Et j'ai une dernière requête ; je l'écrit à la suite car ça reste dans la logique de cette discussion, plutôt que d'ouvrir une nouvelle discussion.

S'il m'arrive d'écrire un code erroné, j'aimerais qu'Excel soit en mesure de me proposer tous les codes proches. (enfin, tout dépend de ce qui est proche pour lui, s'il propose une liste de 14 000, ça va pas être intéressant).

L'inconvénient c'est que pour ce faire, je crois que je vais lui demander de faire une boucle ; et ça n'aura plus de sens.

Si je mets une liste de codes, en faisant en sorte que lorsqu'un code ne donne pas de résultat Excel doit proposer une liste de code proches. Mais lorsque je vais sélectionner un des codes, il donnera un résultat qui ne permettra plus à Excel de proposer une liste de code puisque le résultat est désormais bon. Et puisque le résultat est bon, il n'aura plus besoin de modifier le code et reviendra au point de départ, en voulant me proposer un code ?

Vous pensez que c'est faisable ? Je vais déjà essayer à partir des éléments que vous m'avez fourni.

Bonne journée !

Rechercher des sujets similaires à "liste deroulante dynamique"