XL 2019 Recherche valeur/résultat

FLORIANELLE

XLDnaute Nouveau
Bonjour à tous,
Depuis quelques jours, je ne parviens pas à résoudre mon problème qui est le suivant :
J'ai 3 fichiers Excel :
- un 1er dans lequel se présentent plusieurs colonnes avec des données (j'ai volontairement retirer d'autres colonnes que pour le moment pour résoudre mon souci qui va être identique pour récupérer d'autres infos sur d'autres colonnes)
- un 2e idem le premier
- un 3e dans lequel que souhaite récupérer l'intégralité de certaines colonnes du 1er
et en fonction des valeurs données, récupérer des données du 2e pour enfin pouvoir faire des calculs dans ce 3e.
Pour récupérer l'intégralité de certaines colonnes, j'ai utilisé un copier/collage spécial avec liaison
Pour la 2e partie, j'ai utilisé les fonctions index-equiv mais il me sort une erreur #N/A (voir tableau 3 colonne en jaune).
Je ne comprends pas pourquoi et bien évidement je n'ai pas de solution.
Je sollicite donc un peu d'aide, si quelqu'un peut m'aiguiller, merci beaucoup.
Florianelle
 

Pièces jointes

  • Tableau 2.xlsx
    22.7 KB · Affichages: 7
  • Tableau 3.xlsx
    14.7 KB · Affichages: 7
  • Tableau1.xlsx.zip
    947.7 KB · Affichages: 5
Solution
Bonsoir,
Essayez ça mais je ne l'ai pas testé :
VB:
=SI(SIERREUR(INDEX('[Tableau 2.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 2.xlsx]date paiement'!$A$3:$A$15;0));"")<>"";
(INDEX('[Tableau 2.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 2.xlsx]date paiement'!$A$3:$A$15;0)));
SI(SIERREUR(INDEX('[Tableau 6.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 6.xlsx]date paiement'!$A$3:$A$15;0));"")<>"";
(INDEX('[Tableau 2.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 2.xlsx]date paiement'!$A$3:$A$15;0)));""))
En fait en décomposant on a :
Code:
si(sierreur(Formule;"")<>"";Formule;Erreur)
car en cas d'erreur cela retourne "", donc si <>"" c'est que c'est bon.

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Florianelle,
Dans le F3 je ne trouve qu'un N° de facture présent aussi dans F2, c'est le FA011394.
En modifiant la formule en C5 et en tirant vers le bas :
VB:
=SIERREUR(INDEX('[Tableau 2.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 2.xlsx]date paiement'!$A$3:$A$15;0));"")
On trouve bien la date de paiement pour cette facture: le 06/02/2020.
 

FLORIANELLE

XLDnaute Nouveau
Bonsoir,
Je ne sais pas si je dois créer un nouveau post concernant une question venant compléter la solution proposée et fonctionnelle par Sylvanu.
Le problème est le suivant :
Si la valeur n'est pas trouvée dans le fichier Tableau 2, je souhaiterai que la valeur soit recherchée dans un autre fichier qui pourrait être nommé Tableau 6 (construit à l'identique) et que si cette valeur n'était trouvée ni dans Tableau 2, ni dans Tableau 6 qu'il n'affiche rien.
J'ai essayé la formule suivante mais cela ne fonctionne pas :(

=SI(SIERREUR(INDEX('[Tableau 2.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 2.xlsx]date paiement'!$A$3:$A$15;0));"")=0;"";SI(SIERREUR(INDEX('[Tableau 6.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 6.xlsx]date paiement'!$A$3:$A$15;0));""))
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir,
Essayez ça mais je ne l'ai pas testé :
VB:
=SI(SIERREUR(INDEX('[Tableau 2.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 2.xlsx]date paiement'!$A$3:$A$15;0));"")<>"";
(INDEX('[Tableau 2.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 2.xlsx]date paiement'!$A$3:$A$15;0)));
SI(SIERREUR(INDEX('[Tableau 6.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 6.xlsx]date paiement'!$A$3:$A$15;0));"")<>"";
(INDEX('[Tableau 2.xlsx]date paiement'!$B$3:$B$15;EQUIV(B5;'[Tableau 2.xlsx]date paiement'!$A$3:$A$15;0)));""))
En fait en décomposant on a :
Code:
si(sierreur(Formule;"")<>"";Formule;Erreur)
car en cas d'erreur cela retourne "", donc si <>"" c'est que c'est bon.
 

Discussions similaires

Réponses
2
Affichages
155
Réponses
4
Affichages
286

Statistiques des forums

Discussions
312 177
Messages
2 085 970
Membres
103 072
dernier inscrit
Remithesix