Index, equiv, plusieurs critères
Fermé
Helisa
-
25 juil. 2013 à 19:50
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 26 juil. 2013 à 15:55
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 26 juil. 2013 à 15:55
A voir également:
- Index equiv 2 critères ligne et colonne
- Déplacer une colonne excel - Guide
- Formule somme excel colonne - Guide
- Trier colonne excel - Guide
- Aller à la ligne excel - Guide
- Index equiv plusieurs critères - Forum Excel
3 réponses
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 248
26 juil. 2013 à 00:09
26 juil. 2013 à 00:09
Bonjour,
Déjà on peut peut-être remettre en cause plusieurs choses même si elles ne sont pas à l'origine de ton problème.
1) NO.SEMAINE(...;2) ne retourne pas le n° de semaine ISO utilisé en europe, mais le n° de semaine américain. Des fois c'est bon, des fois non.
Si ton fichier est toujours utilisé sur 2010 mettre NO.SEMAINE(...;21).
S'il doit être compatible 2003 utiliser une formule. Par exemple :
=ENT((D-SOMME(MOD(DATE(ANNEE(D-MOD(D-2;7)+3);1;2);{1E+99;7})*{1;-1})+5)/7)
2) tu pourrais utiliser la fonction date() qui est prévue pour fabriquer une date, plutôt que concatener() et laisser excel interpréter.
D'ailleurs j'aurais plutôt fabriqué le 1er du mois en L1, et en S1: =L1+1, à recopier vers la droite en sélectionnant 7 cellules. Plutôt que d'aller écrire les n° de jour un par un dans les cellules R5, Y5, etc... On se poserait moins de questions sur tes dates.
3) ...;EQUIV($K$639;groupe06;0);...
A quoi ça sert ?
groupe06=K639:K643. Pourquoi ne pas écrire directement 1 ?
On va dire que tu as simplifié et que c'est normal.
4)EQUIV(HY636;semaine06;0)+EQUIV(HY637;jour06;0)-1
Là je crois qu'on touche le noeud du problème. C'est vraiment cette colonne que que veux ? La 71ème de L:HT, c'est à dire CD639 (=98) ?
Calcule plutôt la date du lundi de la semaine qui t'intéresse avec :
=7*HY636+DATE($B$1;1;3)- JOURSEM(DATE($B$1;1;3))-5
(+x pour les autres jours)
et recherche avec equiv() cette date en L1:HT1 pour avoir la 1ère colonne qui t'intéresse.
eric
Déjà on peut peut-être remettre en cause plusieurs choses même si elles ne sont pas à l'origine de ton problème.
1) NO.SEMAINE(...;2) ne retourne pas le n° de semaine ISO utilisé en europe, mais le n° de semaine américain. Des fois c'est bon, des fois non.
Si ton fichier est toujours utilisé sur 2010 mettre NO.SEMAINE(...;21).
S'il doit être compatible 2003 utiliser une formule. Par exemple :
=ENT((D-SOMME(MOD(DATE(ANNEE(D-MOD(D-2;7)+3);1;2);{1E+99;7})*{1;-1})+5)/7)
2) tu pourrais utiliser la fonction date() qui est prévue pour fabriquer une date, plutôt que concatener() et laisser excel interpréter.
D'ailleurs j'aurais plutôt fabriqué le 1er du mois en L1, et en S1: =L1+1, à recopier vers la droite en sélectionnant 7 cellules. Plutôt que d'aller écrire les n° de jour un par un dans les cellules R5, Y5, etc... On se poserait moins de questions sur tes dates.
3) ...;EQUIV($K$639;groupe06;0);...
A quoi ça sert ?
groupe06=K639:K643. Pourquoi ne pas écrire directement 1 ?
On va dire que tu as simplifié et que c'est normal.
4)EQUIV(HY636;semaine06;0)+EQUIV(HY637;jour06;0)-1
Là je crois qu'on touche le noeud du problème. C'est vraiment cette colonne que que veux ? La 71ème de L:HT, c'est à dire CD639 (=98) ?
Calcule plutôt la date du lundi de la semaine qui t'intéresse avec :
=7*HY636+DATE($B$1;1;3)- JOURSEM(DATE($B$1;1;3))-5
(+x pour les autres jours)
et recherche avec equiv() cette date en L1:HT1 pour avoir la 1ère colonne qui t'intéresse.
eric