RECHERCHEV sur deux clés
Fermé
Toulouse31240
Messages postés
14
Date d'inscription
lundi 10 octobre 2011
Statut
Membre
Dernière intervention
11 février 2014
-
13 oct. 2011 à 11:33
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 13 oct. 2011 à 17:10
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 13 oct. 2011 à 17:10
A voir également:
- RECHERCHEV sur deux clés
- Deux ecran pc - Guide
- Faire deux colonnes sur word - Guide
- Deux whatsapp sur un téléphone - Guide
- Itinéraire google map entre deux adresses - Guide
- Si(recherchev vrai alors) ✓ - Forum Excel
7 réponses
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
13 oct. 2011 à 11:49
13 oct. 2011 à 11:49
Bonjour,
Dépose un fichier exemple sur cijoint.fr et colle ici le lien fourni.
eric
Dépose un fichier exemple sur cijoint.fr et colle ici le lien fourni.
eric
Toulouse31240
Messages postés
14
Date d'inscription
lundi 10 octobre 2011
Statut
Membre
Dernière intervention
11 février 2014
Modifié par Toulouse31240 le 13/10/2011 à 13:33
Modifié par Toulouse31240 le 13/10/2011 à 13:33
Bonjour et merci,
Je n'ai pas de fichier exemple.
J'ai un fichier avec trois données A, B et C sur x lignes et un autre dans lequel je dois trouver la valeur C connaissant A et B, c'est tout.
(pour les puristes, je souhaite obtenir la valeur en euros d'un paiement en US$ via Paypal et leur fichier historique, qui comporte la valeur en dollars sur une ligne et la contrepartie en euros sur la ligne suivante)
Je n'ai pas de fichier exemple.
J'ai un fichier avec trois données A, B et C sur x lignes et un autre dans lequel je dois trouver la valeur C connaissant A et B, c'est tout.
(pour les puristes, je souhaite obtenir la valeur en euros d'un paiement en US$ via Paypal et leur fichier historique, qui comporte la valeur en dollars sur une ligne et la contrepartie en euros sur la ligne suivante)
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
13 oct. 2011 à 13:52
13 oct. 2011 à 13:52
=INDEX([Classeur1.xls]Feuil1!$C$1:$C$8;SOMMEPROD(([Classeur1.xls]Feuil1!F1=[Classeur1.xls]Feuil1!$A$1:$A$8)*([Classeur1.xls]Feuil1!G1=[Classeur1.xls]Feuil1!$B$1:$B$8)*LIGNE([Classeur1.xls]Feuil1!$A$1:$A$8)))
eric
eric
Toulouse31240
Messages postés
14
Date d'inscription
lundi 10 octobre 2011
Statut
Membre
Dernière intervention
11 février 2014
13 oct. 2011 à 14:24
13 oct. 2011 à 14:24
Je te suis très reconnaissant d'avoir passé du temps sur ma question, mais serait-ce trop demander la signification de ta réponse ? Sinon il n'y a pas transmission de savoir et je serai obligé de revenir si j'ai une question analogue.
Si je décompose ta réponse, j'obtiens :
=INDEX
([Classeur1.xls]Feuil1!$C$1:$C$8;SOMMEPROD
(
([Classeur1.xls]Feuil1!F1=[Classeur1.xls]Feuil1!$A$1:$A$8)
*
([Classeur1.xls]Feuil1!G1=[Classeur1.xls]Feuil1!$B$1:$B$8)
*
LIGNE([Classeur1.xls]Feuil1!$A$1:$A$8)
)
)
Ce que je comprends (plus ou moins) par :
je récupère par la fonction INDEX la valeur située aux coordonnées C$1:C$8 de la ligne LIGNE si et seulement si F1 est trouvé dans la plage A$1:A$8 et G1 est trouvé dans la plage B$1:B$8
C'est cela ?
Mais alors, quid de SOMMEPROD ??? :-(
Merci.
Si je décompose ta réponse, j'obtiens :
=INDEX
([Classeur1.xls]Feuil1!$C$1:$C$8;SOMMEPROD
(
([Classeur1.xls]Feuil1!F1=[Classeur1.xls]Feuil1!$A$1:$A$8)
*
([Classeur1.xls]Feuil1!G1=[Classeur1.xls]Feuil1!$B$1:$B$8)
*
LIGNE([Classeur1.xls]Feuil1!$A$1:$A$8)
)
)
Ce que je comprends (plus ou moins) par :
je récupère par la fonction INDEX la valeur située aux coordonnées C$1:C$8 de la ligne LIGNE si et seulement si F1 est trouvé dans la plage A$1:A$8 et G1 est trouvé dans la plage B$1:B$8
C'est cela ?
Mais alors, quid de SOMMEPROD ??? :-(
Merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Toulouse31240
Messages postés
14
Date d'inscription
lundi 10 octobre 2011
Statut
Membre
Dernière intervention
11 février 2014
13 oct. 2011 à 14:53
13 oct. 2011 à 14:53
j'ai fait un essai, pas très concluant mais j'ai dû m*rder dans les paramètres...
Fichier source EXCEL_1.xls
http://www.cijoint.fr/cjlink.php?file=cj201110/cij1VmCAH8.xls
Fichier résultat EXCEL_2.xls
http://www.cijoint.fr/cjlink.php?file=cj201110/cijRDksEwd.xls
Merci.
Fichier source EXCEL_1.xls
http://www.cijoint.fr/cjlink.php?file=cj201110/cij1VmCAH8.xls
Fichier résultat EXCEL_2.xls
http://www.cijoint.fr/cjlink.php?file=cj201110/cijRDksEwd.xls
Merci.
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
13 oct. 2011 à 15:20
13 oct. 2011 à 15:20
c'est qu'avec un fichier exemple ça aurait été plus clair...
je récupère par la fonction INDEX la valeur située aux coordonnées C$1:C$8 de la ligne LIGNE si et seulement si F1 est trouvé dans la plage A$1:A$8 et G1 est trouvé dans la plage B$1:B$8
C'est cela ?
oui
Mais alors, quid de SOMMEPROD ??? :-(
SOMMEPROD fait la somme des produits matriciels
(vrai,vrai,faux,...)*(faux,vrai,vrai,...)*(1,2,3,...)
Je pars du principe qu'il y a une réponse unique, donc un seul triplé vrai, vrai, n° de ligne dont la somme me donne le n° de ligne valide (dès qu'il y a un faux => 0)
Je dois m'absenter, je n'ai pas vu tes fichiers.
Je verrai à mon retour sauf si ces explications ont été suffisantes
eric
je récupère par la fonction INDEX la valeur située aux coordonnées C$1:C$8 de la ligne LIGNE si et seulement si F1 est trouvé dans la plage A$1:A$8 et G1 est trouvé dans la plage B$1:B$8
C'est cela ?
oui
Mais alors, quid de SOMMEPROD ??? :-(
SOMMEPROD fait la somme des produits matriciels
(vrai,vrai,faux,...)*(faux,vrai,vrai,...)*(1,2,3,...)
Je pars du principe qu'il y a une réponse unique, donc un seul triplé vrai, vrai, n° de ligne dont la somme me donne le n° de ligne valide (dès qu'il y a un faux => 0)
Je dois m'absenter, je n'ai pas vu tes fichiers.
Je verrai à mon retour sauf si ces explications ont été suffisantes
eric
Toulouse31240
Messages postés
14
Date d'inscription
lundi 10 octobre 2011
Statut
Membre
Dernière intervention
11 février 2014
13 oct. 2011 à 15:51
13 oct. 2011 à 15:51
Bon, j'ai essayé avec les SI et les ET
=SI(ET(A1=[excel_1.xls]Feuil1!$A:$A;B1=[excel_1.xls]Feuil1!$B:$B;[excel_1.xls]Feuil1!$D:$D="Conversion de devise");[excel_1.xls]Feuil1!$F:$F;)
et j'obtiens
FAUX
-539,67
FAUX
-44,32
FAUX
-393,08
FAUX
-11,8
FAUX
-146,93
FAUX
-97,54
FAUX
-85,75
FAUX
-540,37
FAUX
-239,47
FAUX
-409,22
FAUX
-1007,94
FAUX
-27,56
Les valeurs sont justes, donc c'est la logique qui cloche, car il n'y a pas le même nombre de lignes dans les deux fichiers.
A suivre...
=SI(ET(A1=[excel_1.xls]Feuil1!$A:$A;B1=[excel_1.xls]Feuil1!$B:$B;[excel_1.xls]Feuil1!$D:$D="Conversion de devise");[excel_1.xls]Feuil1!$F:$F;)
et j'obtiens
FAUX
-539,67
FAUX
-44,32
FAUX
-393,08
FAUX
-11,8
FAUX
-146,93
FAUX
-97,54
FAUX
-85,75
FAUX
-540,37
FAUX
-239,47
FAUX
-409,22
FAUX
-1007,94
FAUX
-27,56
Les valeurs sont justes, donc c'est la logique qui cloche, car il n'y a pas le même nombre de lignes dans les deux fichiers.
A suivre...
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
13 oct. 2011 à 17:10
13 oct. 2011 à 17:10
Je ne vois ce que les SI et les ET viennent faire dans l'histoire...
Tu avais utilisé F1 et G1 (???) et pas tenu compte des noms des classeurs.
De plus tu as 2 lignes même date, même heure, il faut ajouter un critère, j'ai pris EUR en colonne E
en [Excel_2]Feuil1!G4 :
=INDEX([Excel_1.xls]Feuil1!$F$1:$F$48;SOMMEPROD(([Excel_1.xls]Feuil1!$A$1:$A$48=A4)*([Excel_1.xls]Feuil1!$B$1:$B$48=B4)*([Excel_1.xls]Feuil1!$E$1:$E$48="EUR")*LIGNE($1:$48)))
à recopier vers le bas
eric
Tu avais utilisé F1 et G1 (???) et pas tenu compte des noms des classeurs.
De plus tu as 2 lignes même date, même heure, il faut ajouter un critère, j'ai pris EUR en colonne E
en [Excel_2]Feuil1!G4 :
=INDEX([Excel_1.xls]Feuil1!$F$1:$F$48;SOMMEPROD(([Excel_1.xls]Feuil1!$A$1:$A$48=A4)*([Excel_1.xls]Feuil1!$B$1:$B$48=B4)*([Excel_1.xls]Feuil1!$E$1:$E$48="EUR")*LIGNE($1:$48)))
à recopier vers le bas
eric