BESOIN D'AIDE FONCTION DECALER ET RECHERCHEV
XROYER
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
Raymond PENTIER Messages postés 58993 Date d'inscription Statut Contributeur Dernière intervention -
Raymond PENTIER Messages postés 58993 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je n'arrive pas à cumuler une fonction décaler() avec une fonction recherchev().
Je souhaite calculer une date B qui se situe X jours après une date A en tenant compte d'un calendrier de jours ouvrés sur un atelier.
A1 : date A
A2 : date B
D1 : décalage entre date A et date B (X jours ouvrés)
E1:E30 : liste des jours ouvrés d'un atelier triés par ordre croissant
Ma formule qui ne fonctionne pas :
DATE B =
= decaler(recherchev("A1";"E1:E30";1;FAUX);"D1";0;1;1)
Si quelqu'un peux m'aider, je serais vraiment très heureux !
MERCI
Je n'arrive pas à cumuler une fonction décaler() avec une fonction recherchev().
Je souhaite calculer une date B qui se situe X jours après une date A en tenant compte d'un calendrier de jours ouvrés sur un atelier.
A1 : date A
A2 : date B
D1 : décalage entre date A et date B (X jours ouvrés)
E1:E30 : liste des jours ouvrés d'un atelier triés par ordre croissant
Ma formule qui ne fonctionne pas :
DATE B =
= decaler(recherchev("A1";"E1:E30";1;FAUX);"D1";0;1;1)
Si quelqu'un peux m'aider, je serais vraiment très heureux !
MERCI
A voir également:
- Recherchev decaler
- Recherchev texte ✓ - Forum Excel
- Recherchev + somme plusieurs lignes ✓ - Forum Excel
- Décaler colonne excel - Guide
- Decaler clavier iphone - Guide
- Formule Excel RECHERCHEv() avec du texte - Forum Excel
6 réponses
Bonjour,
la fonction decaler nécessite une référence or recherchev retourne une valeur.
Il n'y a pas besoin de decaler.
=INDEX(E1:E30;EQUIV(A1;E1:E30;1)+D1)
Equiv donne le rang de A1 dans la plage de date. Le ";1" permet de donner la date inférieure si elle n'est pas dans la liste.
Index : pointe dans une plage à un rang donné
ici dans la plage E1:E30, le rang cherché est celui de A1 (equiv(...)) + D1
En utilisant decaler :
=DECALER(INDIRECT("E" & EQUIV(A1;E1:E30;1));D1;0)
Equiv donne le rang de A1 dans la plage de date. Le ";1" permet de donner la date inférieure si elle n'est pas dans la liste.
Indirect : permet d'avoir une référence composée de E et du rang.
Decaler : pointe sur la référence cherchée et se décale de D1 lignes et 0 colonne
NB : si la plage ne commence pas en ligne 1 mais en 5 par exemple la formule devient
=DECALER(INDIRECT("E" & EQUIV(A1;E1:E30;1)+4);D1;0)
car le rang 1 correspond à la ligne 5.
Bonne continuation
LePlot
la fonction decaler nécessite une référence or recherchev retourne une valeur.
Il n'y a pas besoin de decaler.
=INDEX(E1:E30;EQUIV(A1;E1:E30;1)+D1)
Equiv donne le rang de A1 dans la plage de date. Le ";1" permet de donner la date inférieure si elle n'est pas dans la liste.
Index : pointe dans une plage à un rang donné
ici dans la plage E1:E30, le rang cherché est celui de A1 (equiv(...)) + D1
En utilisant decaler :
=DECALER(INDIRECT("E" & EQUIV(A1;E1:E30;1));D1;0)
Equiv donne le rang de A1 dans la plage de date. Le ";1" permet de donner la date inférieure si elle n'est pas dans la liste.
Indirect : permet d'avoir une référence composée de E et du rang.
Decaler : pointe sur la référence cherchée et se décale de D1 lignes et 0 colonne
NB : si la plage ne commence pas en ligne 1 mais en 5 par exemple la formule devient
=DECALER(INDIRECT("E" & EQUIV(A1;E1:E30;1)+4);D1;0)
car le rang 1 correspond à la ligne 5.
Bonne continuation
LePlot