Recherche suivant 2 criteres

Résolu/Fermé
juju - 26 juil. 2010 à 13:27
 juju - 27 juil. 2010 à 08:50
Bonjour,

Alors voilà, je ne post jamais sur les forums car en général je trouve la solution grâce aux autres post !
Mais là, je n'y arrive pas. J'espère que vous pourrez m'aider...

J'ai un tableau excel avec 3 colonnes
B C D
Ref Finitions prix

Il peut y avoir plusieurs fois la même ref avec des finitions différentes.
XXX rouge 110
XXX bleu 115

Ect ...
J'ai un autre tableau (sur une autre page)
Qui reprend
1 A B C
2 Ref rouge bleu
3 XXX ?prix ?prix

Voilà d'après la référence et la finition il faut que je retrouve le prix et je voudrais que ce soit automatique.

Alors j'ai essayé (dans mon premier tableau sur le côté) une recherche INDEX+EQUIV ! Qui fonctionne ! J'étais contente.

=INDEX(D3:D40;EQUIV(1;(C3:C40=G5)*(B3:B40=E6);0))
G5 correspondant à ma finition Et E6 à ma ref tout ça validé par Control Atl Entrée

Mais voilà, je vais pour refaire la même dans mon vrai tableau (sur une autre page donc) et là #N/A# (en allant les chercheer dans le tableau d'origine)
voilà je ne sais pas ce que je fais de mal.
Est ce que ça devrait marcher même en étant sur une autre page ?
Ou faut il que je trouve une autre fonction ?

Voilà, merci d'avance pour votre aide j'espère que je suis clair.
Juju

A voir également:

11 réponses

Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
26 juil. 2010 à 21:49
Bonjour,
Essayez cette formule :
=SI(ESTNA(INDEX(prix;EQUIV(1;(finition=C3)*(Référence=A5);0)))=FAUX;INDEX(prix;EQUIV(1;(finition=C3)*( Référence=A5);0));"")
1
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
Modifié par Le Pingou le 26/07/2010 à 14:32
Bonjour,
Je suppose que les données [D3 :D40]....etc. sont dans le même classeur mais dans une autre feuille (exp : Feuil1) que la formule (exp : Feuil2).
Proposition : nommer les 3 plages et utiliser ces noms dans la formule, exemple
{=INDEX(plageD;EQUIV(1;(plageC=Feuil1!G5)*(plageB=Feuil1!E6);0))}


Note : Si la fonction EQUIV ne trouve pas de valeur équivalente, elle renvoie la valeur d'erreur #N/A

Salutations.
Le Pingou
0
Bonjour,
Meric pour votre réponse très rapide.
Non ce sont 2 classeurs différents.
Je vais essayer quand même de nommer les plages.
Merci
0
J'ai donc une formule qui ressemble à ça et toujours le même erreur :
=INDEX(1erclasseur!prix;EQUIV(1;(1erclasseur!finition=C3)*(1erclasseur!Référence=A5);0))

J'ai bien fait Controle alt entrée pour validé.

une autre idée ????

Merci d'avance
0
J'ai tenté ça :

=INDEX(1erclasseur!prix;EQUIV(1;(C3=1erclasseur!finition)*(A5=1erclasseur!Référence);3))

Alors il me trouve pas le bon prix, mais il me trouve un prix !
Où est l'erreur ??

Merci d'avance
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
26 juil. 2010 à 14:51
Salut,

Peut être ce genre de formule à tester sur le fichier joint et on en reparle

https://www.cjoint.com/?hAoX6CECmA
0
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
26 juil. 2010 à 14:53
Bonjour,
Contrôler le résultat de la fonction EQUIV, car Si elle ne trouve pas de valeur équivalente, elle renvoie la valeur d'erreur #N/A
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le pingou : oui il y a bien un résultat pour ma recherche.

Mike-31 : Merci : Je suis en train de regarder, pourquoi est on obligé de ramener les colonnes prix et finition dans le deuxième tableau ??
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
26 juil. 2010 à 15:24
Re,

Si j'ai bien compris, tu as plusieurs références identiques, et pour une référence si tu as plusieurs fois la même couleur exemple pour x ou le rouge sort deux fois et pour xx le bleu deux fois, il faut relancer une recherche à partir d'un résultat.
Par contre pour chaque référence identique, si tu n'as qu'une seule couleur il est possible de traiter directement

Confirme nous le et je reconsidère le fichier
0
Non, j'ai plusieurs fois la même référence avec plusieurs couleurs
x rouge
x bleu
x jaune
XX rouge
XX bleu
XX jaune
Mais jamais 2 fois la même couleur.
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
26 juil. 2010 à 16:05
Tu as sur le fichier joint un affichage direct feuille 3

https://www.cjoint.com/?hAqdNeHwPN
0
Merci pour la réponse, ce serait génial : le probléme (comme tu l'as évoqué dans le fichier joint) c'est que mes tableaux (où je récupère les prix) sont mis en forme et reste tel quel, donc ça veut dire une formule plus longue avec des conditions.

Sinon j'ai trouvé ça qui fonctionne apparement :

=INDEX(matrice;SOMMEPROD((reference=E6)*(finition=G5)*LIGNE(prix)); 3)

Je pense que je vais garder celle-ci mais il faut que je l'améliore car Le hic : c'est quand une référence n'a pas la finition concernée elle me met une valeur erronée.
Comment peut on corriger ça ?
Et qu'elle ne remplisse pas la case si le référence n'existe pas dans la finition ?

d'autres idées ??

Merci d'avance
juju
0
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
26 juil. 2010 à 16:59
Bonjour,
Il serait peut-être plus simple si vous mettez le fichier sur https://www.cjoint.com/ et poster le lein.
0
Bonjour,

Je viens d'essayer ce matin : c'est excatement ça qu'il me fallait !!! MERCI BEAUCOUP à tous pour votre aide !!!
à bientôt
juju
0