Recherche conditionnelle
NBK88CA
-
DjiDji59430 Messages postés 4253 Date d'inscription Statut Membre Dernière intervention -
DjiDji59430 Messages postés 4253 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
sachant que j ai un tableau 1 dans lequel je rassemble les données suivantes :
OF pdt OF OF p/c Actual Start Date Actual Finish Date
A X TP1 24/10/2016 24/10/2016
B Y EMB 30/09/2016 30/09/2016
C Z AJ2 05/09/2016 05/09/2016
C Z EMB 05/09/2016 05/09/2016
D T TP5 02/09/2016 02/09/2016
D T EMB 02/09/2016 02/09/2016
E O TP1 08/09/2016 08/09/2016
E O TP5 14/09/2016 14/09/2016
E O EMB 14/09/2016 14/09/2016
Comme vous pouvez remarquer, l'OF peut se répéter en 2 ou 3 lignes comme il peut être unique.
Tout OF a un actual start date et actual finish date pour chaque PDC. L'objectif est de connaitre le LEAD TIME de chaque OF. C'est a dire la différence entre premier jour et dernier jour de l'OF sous condition que le premier jour de l'OF doit être le jour apparu dans le premier PDC et que le dernier jour de l'OF doit être celui apparu dans le dernier PDC (Actual finish date : 1ére ligne si l'OF ne se répète pas / 2 éme ligne si l'OF se répète deux fois / 3éme ligne si l'OF se répète trois fois)
1ére étape, j'ai pu mettre (avec une fonction conditionnelle SI) pour chaque OF une date début (selon le premier PDC qui s'affiche) et une date fin (par rapport au dernier PDC).
Date début = SI(OU(B2=B1;B2=B3);SI(C2="351TP1_R";D2;SI(ET(OU(C2="351TP5_R";C2="351AJ2_R";C2="351TP6_R");B1<>B2);D2;""));D2)
Date fin = SI(OU(B2=B1;B2=B3);SI(C2="351EMB_R";E2;SI(OU(C2="351TP5_R";C2="351AJ2_R";C2="351TP6_R";C2="351TP1_R";B1<>B2;C3<>"351EMB_R");"";E2));E2)
OF pdt OF OF p/c Actual Start Date Actual Finish Date Date début Date fin
A X TP1 24/10/2016 24/10/2016 24/10/2016 24/10/2016
B Y EMB 30/09/2016 30/09/2016 30/09/2016 30/09/2016
C Z AJ2 05/09/2016 05/09/2016 05/09/2016 -
C Z EMB 05/09/2016 05/09/2016 - 05/09/2016
D T TP5 02/09/2016 02/09/2016 02/09/2016 -
D T EMB 02/09/2016 02/09/2016 - 02/09/2016
E O TP1 08/09/2016 08/09/2016 08/09/2016 -
E O TP5 14/09/2016 14/09/2016 - -
E O EMB 14/09/2016 14/09/2016 - 14/09/2016
Dans un tableau 2, j'ai supprimé les doublons des OF comme suit :
OF date debut date fin
814010 24/10/2016 24/10/2016
877400 01/09/2016 01/09/2016
892705 30/09/2016 30/09/2016
893006 05/09/2016 -
893203 02/09/2016 -
la date début cherchée du tableau 1 et affichée au tableau 2 est facilement trouvée grâce à la RECHERCHEV.
Le problème se pose pour la date fin puisque RECHERCHEV va me donner la valeur de la première colonne trouvée, qui sera vide dans le tableau 1 si l'OF est répétable au tableau 1.
J'ai essayé avec les fonctions INDEX(EQUIV) et SI(DECAL) mais je tombe sur le même résultat.
Quelqu'un peut m'aider SVP :)
J'espère que je me suis bien expliqué.
PS : la recherche doit être faite par rapport à l'OF et non PRODUIT ou autre colonne
sachant que j ai un tableau 1 dans lequel je rassemble les données suivantes :
OF pdt OF OF p/c Actual Start Date Actual Finish Date
A X TP1 24/10/2016 24/10/2016
B Y EMB 30/09/2016 30/09/2016
C Z AJ2 05/09/2016 05/09/2016
C Z EMB 05/09/2016 05/09/2016
D T TP5 02/09/2016 02/09/2016
D T EMB 02/09/2016 02/09/2016
E O TP1 08/09/2016 08/09/2016
E O TP5 14/09/2016 14/09/2016
E O EMB 14/09/2016 14/09/2016
Comme vous pouvez remarquer, l'OF peut se répéter en 2 ou 3 lignes comme il peut être unique.
Tout OF a un actual start date et actual finish date pour chaque PDC. L'objectif est de connaitre le LEAD TIME de chaque OF. C'est a dire la différence entre premier jour et dernier jour de l'OF sous condition que le premier jour de l'OF doit être le jour apparu dans le premier PDC et que le dernier jour de l'OF doit être celui apparu dans le dernier PDC (Actual finish date : 1ére ligne si l'OF ne se répète pas / 2 éme ligne si l'OF se répète deux fois / 3éme ligne si l'OF se répète trois fois)
1ére étape, j'ai pu mettre (avec une fonction conditionnelle SI) pour chaque OF une date début (selon le premier PDC qui s'affiche) et une date fin (par rapport au dernier PDC).
Date début = SI(OU(B2=B1;B2=B3);SI(C2="351TP1_R";D2;SI(ET(OU(C2="351TP5_R";C2="351AJ2_R";C2="351TP6_R");B1<>B2);D2;""));D2)
Date fin = SI(OU(B2=B1;B2=B3);SI(C2="351EMB_R";E2;SI(OU(C2="351TP5_R";C2="351AJ2_R";C2="351TP6_R";C2="351TP1_R";B1<>B2;C3<>"351EMB_R");"";E2));E2)
OF pdt OF OF p/c Actual Start Date Actual Finish Date Date début Date fin
A X TP1 24/10/2016 24/10/2016 24/10/2016 24/10/2016
B Y EMB 30/09/2016 30/09/2016 30/09/2016 30/09/2016
C Z AJ2 05/09/2016 05/09/2016 05/09/2016 -
C Z EMB 05/09/2016 05/09/2016 - 05/09/2016
D T TP5 02/09/2016 02/09/2016 02/09/2016 -
D T EMB 02/09/2016 02/09/2016 - 02/09/2016
E O TP1 08/09/2016 08/09/2016 08/09/2016 -
E O TP5 14/09/2016 14/09/2016 - -
E O EMB 14/09/2016 14/09/2016 - 14/09/2016
Dans un tableau 2, j'ai supprimé les doublons des OF comme suit :
OF date debut date fin
814010 24/10/2016 24/10/2016
877400 01/09/2016 01/09/2016
892705 30/09/2016 30/09/2016
893006 05/09/2016 -
893203 02/09/2016 -
la date début cherchée du tableau 1 et affichée au tableau 2 est facilement trouvée grâce à la RECHERCHEV.
Le problème se pose pour la date fin puisque RECHERCHEV va me donner la valeur de la première colonne trouvée, qui sera vide dans le tableau 1 si l'OF est répétable au tableau 1.
J'ai essayé avec les fonctions INDEX(EQUIV) et SI(DECAL) mais je tombe sur le même résultat.
Quelqu'un peut m'aider SVP :)
J'espère que je me suis bien expliqué.
PS : la recherche doit être faite par rapport à l'OF et non PRODUIT ou autre colonne
A voir également:
- Recherche conditionnelle
- Mise en forme conditionnelle excel - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Excel liste déroulante conditionnelle - Guide
- Rechercher ou entrer l'adresse mm - recherche google - Guide
- Recherche photo - Guide