Recherche Excel - Google Sheet avec plusieurs résultat

Fermé
ben - 23 juin 2022 à 11:12
PHILOU10120 Messages postés 6393 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 9 octobre 2024 - 24 juin 2022 à 12:33
Bonjour,

J'ai créé un tableau avec trois feuilles, la première recherche les informations voulu dans les deux autres. La deuxième est une base de données client, et la troisième la base de données de factures.

Quand je recherche un client (feuille 1) il m'affiche ses informations, ainsi que les informations de factures, mais un client peut avoir plusieurs factures.
Ducoup quand j'effectue ma recherche à la ligne 1 j'obtiens un premier numéro de facture, mais à la ligne 2 si je recherche le même client, le numéro de facture reste le même qu'a la ligne 1.

J'aimerai quelle formule permet de faire une recherche avec une réponse unique, mais que la clé de recherche reste la même.

Pouvez-vous m'aider ?


Configuration: Windows / Chrome 102.0.0.0
A voir également:

2 réponses

PHILOU10120 Messages postés 6393 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 9 octobre 2024 810
23 juin 2022 à 13:27
Bonjour

Je viens de vous faire un petit exemple en espérant que cela vous aide

https://www.cjoint.com/c/LFxlAiy7404
0
Bonjour,

Je vous remercie pour votre aide, est ce que il serait possible de m'expliquer comment fonctionne la formule s'il vous plaît, car j'aimerai pouvoir comprendre s'il vous plait ?
0
PHILOU10120 Messages postés 6393 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 9 octobre 2024 810
24 juin 2022 à 12:33
Bonjour

Formule colonne C4

=SI(LIGNE()-4>=$I$2;"";SI(INDEX($A$20:$A$100;EQUIV($A$4;$A$20:$A$100;0)+LIGNE()-4;1)=0;"";INDEX($A$20:$A$100;EQUIV($A$4;$A$20:$A$100;0)+LIGNE()-4;1)))

Fonction LIGNE() donne le numéro de la ligne de la cellule le -4 pour récupérer l'écart

SI(LIGNE()-4>=$I$2;""; la cellule affiche "" au-dessus de I2 (10 dans ce cas)
La cellule I2 compte le nombre de fois où il y le client dans la base formule I2=NB.SI(A20:A100;A4)

INDEX($A$20:$A$100;on regarde dans la matrice A4 à A100
EQUIV($A$4;$A$20:$A$100;0) Fonction EQUIV(...) on cherche la ligne ou se trouve le premier nom du client)
Cela oblige le tri sur de la colonne client

+LIGNE()-4; on incrémente les lignes pour prendre 1, 2, 3, ... les dix lignes du client voir I2
0