XL 2016 Fonction de recherche avancée (2 critères exacts + 1 critère "inférieur à")

Coco_07

XLDnaute Nouveau
Bonjour à toutes et à tous,

Je dispose d'un tableau qui me permet de suivre les traitements réalisés sur des lots d'animaux (Feuille "Cahier d'Interventions"). Chaque lot est stocké dans une Cabane.
En parallèle je dispose d'un tableau de données (Feuille "Base de données") qui référence les mouvement d'animaux dans les différentes Cabanes et dans lequel je souhaite récupérer l'information de Numéro de Lot (colonne H). Le fonctionnement est le suivant : à chaque nouvelle entrée dans une Cabane, on associe un numéro de lot, donc les numéro de lots se trouveront toujours sur la ligne des entrées.

Je souhaite trouver la formule de recherche qui me permettra, en H5, H6, H7... d'obtenir le bon numéro de lot.

Sachant que mon tableau "Base de données" va être amené à grandir, la même cabane aura plusieurs entrées (et donc plusieurs numéros de lots) étalés dans le temps. Il s'agit donc de trouver le lot en cours au moment de la "date d'intervention" (feuille Cahier d'intervention, colonne B).

J'ai réfléchi à une formule basée sur les fonctions INDEX et EQUIV :
En H5 : =INDEX(Tableau1[Numéro de lot];EQUIV(C5&"Entrée"&B5;Tableau1[Cabane]&Tableau1[Type]&Tableau1[Date];1))

Pas moyen d'arriver à obtenir le résultat escompté...

Auriez-vous une idée ?

Merci par avance
 

Pièces jointes

  • Recherche tableau - trois critères.xlsx
    20.9 KB · Affichages: 12
Solution
Bonjour à tous,

Rajout du contrôle de la date dans la formule
VB:
=INDEX(Tableau1[Numéro de Lot];GRANDE.VALEUR(SI(([@[Date de traitement]]>=Tableau1[Date])*([@Cabane]=Tableau1[Cabane])*("Entrée"=Tableau1[Type]);LIGNE(Tableau1[Date])-2);1))

JHA

JHA

XLDnaute Barbatruc
Bonjour à tous,

A tout hasard en "H5"
VB:
=INDEX(Tableau1[Numéro de Lot];GRANDE.VALEUR(SI(([@Cabane]=Tableau1[Cabane])*("Entrée"=Tableau1[Type]);LIGNE(Tableau1[Date])-2);1))

JHA
 

Pièces jointes

  • Recherche tableau - trois critères.xlsx
    22.3 KB · Affichages: 2

JHA

XLDnaute Barbatruc
Bonjour à tous,

Rajout du contrôle de la date dans la formule
VB:
=INDEX(Tableau1[Numéro de Lot];GRANDE.VALEUR(SI(([@[Date de traitement]]>=Tableau1[Date])*([@Cabane]=Tableau1[Cabane])*("Entrée"=Tableau1[Type]);LIGNE(Tableau1[Date])-2);1))

JHA
 

Pièces jointes

  • Recherche tableau - trois critères.xlsx
    22.3 KB · Affichages: 9

Coco_07

XLDnaute Nouveau
C'est exactement ça, merci beaucoup pour ce coup de main car c'était un véritable casse tête pour moi :) Quand je vois la simplicité avec laquelle vous résolvez ça je me dis qu'on ne joue pas tous dans la même cour haha

Bonne continuation !
 

Discussions similaires

Statistiques des forums

Discussions
315 096
Messages
2 116 171
Membres
112 676
dernier inscrit
little_b