Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Renvoie d'une valeur par rapport à une autre ligne

16 réponses
Avatar
géjoun
Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la dernière
semaine du mois le plus présent entre E1 et AS1 (suivant comment est complété
E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec 37 en E2, que ça
me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant dans les
archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!

--
géjoun
dam-mail2005@ifrance.com
/Enlever l'année pour m'écrire.../

10 réponses

1 2
Avatar
JLuc
géjoun avait soumis l'idée :
Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la dernière
semaine du mois le plus présent entre E1 et AS1 (suivant comment est complété
E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec 37 en E2, que ça
me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant dans les
archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!


J'ai regarde, mais j'ai absolument pas compris ce que tu voulais. :-?
Tu m'en vois vraiment desole... :/

Avatar
Ange Ounis
Je te propose d'essayer cette formule :

=ENT((DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2)+11-("1/"&ANNEE(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6+4-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2))))/7)

Il y a sans doute plus concis..

----------
Ange Ounis
----------

Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la dernière
semaine du mois le plus présent entre E1 et AS1 (suivant comment est complété
E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec 37 en E2, que ça
me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant dans les
archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!



Avatar
géjoun
Quoi? toi veut dire que j'm'es mal expliqué???? :o)

Alors je reprend...

Dans le tableau ci-joint, on a en E4:AS4 les jours des mois; en E2:AS2, les
numéros des semaines qui se rapportent aux jours en desssous; et en E1:AS1,
les noms des mois qui se rapportent aux jours.

Suivant comment on complète la cellule E2, ça fait varier le calendrier des
jours entre E4 et AS4, et les noms des mois se situant entre E1 et AS1 et les
numéros des semaines (E2:AS2) se calent ensuite par rapport aux jours
(E4:AS4).

N'importe comment que soit complété E2, on se retrouve toujours avec un mois
"dominant" entre E1 et AS1, et je cherche le moyen de faire renvoyer en C6 le
numéro de semaine qui correspond à la dernière semaine de ce mois "dominant".

Exemple :

Avec 12 en E2, c'est le mois d'avril qui est le plus présent entre E1:AS1,
et la dernière semaine d'Avril est la 17 semaine, donc en c6, la formule
renvoie 17.

Avec 31 en E2, c'est Août, donc en C6, on trouve 35..etc...

C'est plus clair comme ça?

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../




géjoun avait soumis l'idée :
Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la dernière
semaine du mois le plus présent entre E1 et AS1 (suivant comment est complété
E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec 37 en E2, que ça
me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant dans les
archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!


J'ai regarde, mais j'ai absolument pas compris ce que tu voulais. :-?
Tu m'en vois vraiment desole... :/



Avatar
géjoun
Bonjour,

je viens de voir ta réponse, c'est bien ce principe que je cherche à faire,
mais ça me convient qu'aux 3/4 car elle ne fonctionne pas toujours.

Par exemple, lorsqu'on renseigne 2 en E2, au lieu de renvoyer le numéro de
semaine 8, elle renvoie le numéro 4, et pareil lorsqu'on complète avec 7, 8,
9 ou 10 elle renvoie 12 au lieu de 13.

Je me penche dessus pour essayer de comprendre et voir d'oû ça vient.

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../




Je te propose d'essayer cette formule :

=ENT((DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2)+11-("1/"&ANNEE(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6+4-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2))))/7)

Il y a sans doute plus concis..

----------
Ange Ounis
----------

Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la dernière
semaine du mois le plus présent entre E1 et AS1 (suivant comment est complété
E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec 37 en E2, que ça
me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant dans les
archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!






Avatar
JLuc
Là, j'un un mieux compris, j'etudie et te rapelle :oÞ
géjoun avait soumis l'idée :
Quoi? toi veut dire que j'm'es mal expliqué???? :o)

Alors je reprend...

Dans le tableau ci-joint, on a en E4:AS4 les jours des mois; en E2:AS2, les
numéros des semaines qui se rapportent aux jours en desssous; et en E1:AS1,
les noms des mois qui se rapportent aux jours.

Suivant comment on complète la cellule E2, ça fait varier le calendrier des
jours entre E4 et AS4, et les noms des mois se situant entre E1 et AS1 et les
numéros des semaines (E2:AS2) se calent ensuite par rapport aux jours
(E4:AS4).

N'importe comment que soit complété E2, on se retrouve toujours avec un mois
"dominant" entre E1 et AS1, et je cherche le moyen de faire renvoyer en C6 le
numéro de semaine qui correspond à la dernière semaine de ce mois "dominant".

Exemple :

Avec 12 en E2, c'est le mois d'avril qui est le plus présent entre E1:AS1,
et la dernière semaine d'Avril est la 17 semaine, donc en c6, la formule
renvoie 17.

Avec 31 en E2, c'est Août, donc en C6, on trouve 35..etc...

C'est plus clair comme ça?

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../




géjoun avait soumis l'idée :
Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la
dernière semaine du mois le plus présent entre E1 et AS1 (suivant comment
est complété E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec
37 en E2, que ça me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant dans
les archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!


J'ai regarde, mais j'ai absolument pas compris ce que tu voulais. :-?
Tu m'en vois vraiment desole... :/





Avatar
ChrisV
Bonjour Géjoun,

Avec la plage de données E1:AS1 nommée ici Zn
(à saisir sans les { } et valider par Ctrl+Shift+Entrée)

{=INDIRECT(ADRESSE(2;GRANDE.VALEUR(SI(Zn=INDEX(Zn;EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);));COLONNE(Zn)-2);1)))}


ChrisV


"géjoun" a écrit dans le message de news:

Bonjour,

je viens de voir ta réponse, c'est bien ce principe que je cherche à
faire,
mais ça me convient qu'aux 3/4 car elle ne fonctionne pas toujours.

Par exemple, lorsqu'on renseigne 2 en E2, au lieu de renvoyer le numéro de
semaine 8, elle renvoie le numéro 4, et pareil lorsqu'on complète avec 7,
8,
9 ou 10 elle renvoie 12 au lieu de 13.

Je me penche dessus pour essayer de comprendre et voir d'oû ça vient.

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../




Je te propose d'essayer cette formule :

=ENT((DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2)+11-("1/"&ANNEE(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6+4-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2))))/7)

Il y a sans doute plus concis..

----------
Ange Ounis
----------

Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie
d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la
dernière
semaine du mois le plus présent entre E1 et AS1 (suivant comment est
complété
E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec 37 en E2,
que ça
me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant
dans les
archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!








Avatar
géjoun
Bonjour,

C'est bon cette fois-ci, ta formule fonctionne parfaitement!
Une fois de plus, je m'attendais à une formule assez simple pour faire ça,
et je me retrouve avec 50 fonctions combinées...

Pourrais-tu me donner quelques explications sur son fonctionnement? (et
qu'apporte le fait que ce soit une matricielle?)

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../



Bonjour Géjoun,

Avec la plage de données E1:AS1 nommée ici Zn
(à saisir sans les { } et valider par Ctrl+Shift+Entrée)

{=INDIRECT(ADRESSE(2;GRANDE.VALEUR(SI(Zn=INDEX(Zn;EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);));COLONNE(Zn)-2);1)))}


ChrisV


"géjoun" a écrit dans le message de news:

Bonjour,

je viens de voir ta réponse, c'est bien ce principe que je cherche à
faire,
mais ça me convient qu'aux 3/4 car elle ne fonctionne pas toujours.

Par exemple, lorsqu'on renseigne 2 en E2, au lieu de renvoyer le numéro de
semaine 8, elle renvoie le numéro 4, et pareil lorsqu'on complète avec 7,
8,
9 ou 10 elle renvoie 12 au lieu de 13.

Je me penche dessus pour essayer de comprendre et voir d'oû ça vient.

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../




Je te propose d'essayer cette formule :

=ENT((DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2)+11-("1/"&ANNEE(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6+4-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2))))/7)

Il y a sans doute plus concis..

----------
Ange Ounis
----------

Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie
d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la
dernière
semaine du mois le plus présent entre E1 et AS1 (suivant comment est
complété
E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec 37 en E2,
que ça
me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant
dans les
archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!













Avatar
ChrisV
et je me retrouve avec 50 fonctions combinées...


Pfff... 9 fonctions, pas 50 ?! ;-)
Pour l'explication, ok pour ce soir, pas le temps maintenant...
(à moins que JP, beaucoup plus habile que moi avec sa plume, ne prenne le
relais...)


ChrisV


"géjoun" a écrit dans le message de news:

Bonjour,

C'est bon cette fois-ci, ta formule fonctionne parfaitement!
Une fois de plus, je m'attendais à une formule assez simple pour faire ça,
et je me retrouve avec 50 fonctions combinées...

Pourrais-tu me donner quelques explications sur son fonctionnement? (et
qu'apporte le fait que ce soit une matricielle?)

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../



Bonjour Géjoun,

Avec la plage de données E1:AS1 nommée ici Zn
(à saisir sans les { } et valider par Ctrl+Shift+Entrée)

{=INDIRECT(ADRESSE(2;GRANDE.VALEUR(SI(Zn=INDEX(Zn;EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);));COLONNE(Zn)-2);1)))}


ChrisV


"géjoun" a écrit dans le message de news:

Bonjour,

je viens de voir ta réponse, c'est bien ce principe que je cherche à
faire,
mais ça me convient qu'aux 3/4 car elle ne fonctionne pas toujours.

Par exemple, lorsqu'on renseigne 2 en E2, au lieu de renvoyer le numéro
de
semaine 8, elle renvoie le numéro 4, et pareil lorsqu'on complète avec
7,
8,
9 ou 10 elle renvoie 12 au lieu de 13.

Je me penche dessus pour essayer de comprendre et voir d'oû ça vient.

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../




Je te propose d'essayer cette formule :

=ENT((DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2)+11-("1/"&ANNEE(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6+4-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2))))/7)

Il y a sans doute plus concis..

----------
Ange Ounis
----------

Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie
d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la
dernière
semaine du mois le plus présent entre E1 et AS1 (suivant comment est
complété
E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec 37 en
E2,
que ça
me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant
dans les
archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!















Avatar
ChrisV
Oups...
Désolé pour cette réponse tardive, j'avais oublié ce fil...

Donc...
Tu précisais lors d'un précédent message:
"N'importe comment que soit complété E2, on se retrouve toujours avec un
mois "dominant" entre E1 et AS1, et je cherche le moyen de faire renvoyer en
C6 le numéro de semaine qui correspond à la dernière semaine de ce mois
"dominant".

L'élaboration de la formule ne fait que suivre scrupuleusement cet énoncé,
la solution (pas la seule...) était donc dans la question en elle-même...

Afin de mieux se représenter l'explication donnée ci-après, prenons dans
notre exemple la valeur 13 en E2

1) "...on se retrouve toujours avec un mois dominant..."

Traduit en langage formule, par rapport à la plage de données (E1:AS1 nommée
ici Zn) où se situe les informations, cela donne: "renvoyer l'entrée la plus
fréquente contenue sur la plage Zn". Pour des valeurs numériques, on utilise
généralement la fonction MODE(), malheureusement inutilisable ici puisque la
plage se compose de valeurs numériques (vide interprété comme 0), mais aussi
de valeurs alpha (les mois), il nous faut donc "composer" autrement...
C'est ce que va nous permettre
INDEX(Zn;EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);))
Examinons maintenant les arguments de cette fonction.

a) Matrice: il s'agit bien de la plage où se situe l'information à renvoyer,
donc ici Zn composée ainsi:
{0.0."mars".0.0.0.0.0."avril".0.0.0.0.0."avril".0.0.0.0.0."avril".0.0.0.0.0."avril".0.0.0.0.0."mai".0.0.0.0.0."mai".0.0}

b) Il s'agit maintenant d'indiquer, par rapport à cette matrice, quel est
l'indice de la référence à renvoyer (nb: on pourrait d'ailleurs tout aussi
bien utiliser ici indifféremment l'argument No_lig, ou No_col), dans notre
exemple 9, puisque c'est bien, examiné de visu, le 9e élément de la matrice
qui est l'entrée la plus fréquente...
C'est ce que va nous permettre EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);)

En effet, NB.SI(Zn;Zn) va renvoyer la matrice suivante:
{0.0.1.0.0.0.0.0.4.0.0.0.0.0.4.0.0.0.0.0.4.0.0.0.0.0.4.0.0.0.0.0.2.0.0.0.0.0.2.0.0}
le 3e élément de la matrice (mars) apparaît 1 fois; le 9e élément (avril) 4
fois; le 33e élément (mai) 2 fois, etc...

MAX(NB.SI(Zn;Zn)) permettant bien évidement d'extraire ici la valeur 4, et
permettra de "poser" la question suivante: "quelle est la valeur de la
matrice Zn qui apparaît 4 fois. On utilisera pour cela la fonction EQUIV().

EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);) examine donc la matrice suivante
EQUIV(4;{0.0.1.0.0.0.0.0.4.0.0.0.0.0.4.0.0.0.0.0.4.0.0.0.0.0.4.0.0.0.0.0.2.0.0.0.0.0.2.0.0};)
et permet d'obtenir l'indice de référence que nous recherchions
précédemment, afin de compléter l'argument 2 (ou 3) de notre fonction
INDEX(), c'est à dire la valeur 9.

Dans son expression globale, la formule
INDEX(Zn;EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);)) est analysée en mémoire par
Excel sous la forme:
INDEX({0.0."mars".0.0.0.0.0."avril".0.0.0.0.0."avril".0.0.0.0.0."avril".0.0.0.0.0."avril".0.0.0.0.0."mai".0.0.0.0.0."mai".0.0};9)
et permet donc d'extraire la valeur "avril"

La formule finale est donc interprétée en interne de la façon suivante (déjà
plus "lisible"...):
=INDIRECT(ADRESSE(2;GRANDE.VALEUR(SI(Zn="avril";COLONNE(Zn)-2);1)))

2) "...je cherche le moyen de faire renvoyer en C6 le numéro de semaine qui
correspond à la dernière semaine de ce mois dominant."
Traduit en langage formule: "renvoyer la plus grande valeur correspondant à
la donnée la plus fréquente de la plage (E1:AS1 nommée ici Zn)"
Deux options sont ici possibles, utiliser la fonction GRAND.VALEUR() ou, et
nous le verrons un peu plus tard, utiliser la fonction MAX(). L'intérêt de
la première résidant dans la possibilité d'extraire, si besoin, le nième (le
kième devrais-je plutôt dire…) élément recherché de la matrice examinée.
GRANDE.VALEUR(SI(Zn=INDEX(Zn;EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);));COLONNE(Zn)-2);1)
par rapport aux calculs précédents, on a donc:
GRANDE.VALEUR(SI(Zn="avril";COLONNE(Zn)-2);1)
Examinons maintenant les arguments de cette fonction.

a) Matrice: correspond à la plage sur laquelle s'effectue la recherche.
Cette recherche devant toutefois se limiter au seul mois "dominant", il est
impératif de ne renvoyer que les éléments correspondant à ce critère...
C'est ce que va nous permettre le test:
SI(Zn=INDEX(Zn;EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);));COLONNE(Zn)-2)
ou encore, selon les calculs déjà effectués...
SI(Zn="avril";COLONNE(Zn)-2)

Si le test est vérifié, alors Excel devra renvoyer le numéro de colonne (-2
afin d'ajuster les données à l'organisation de ton tableau) de chaque
élément correspondant. L'analyse s'opère de la façon suivante:
SI({FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.VRAI.FAUX.
FAUX.FAUX.FAUX.FAUX.VRAI.FAUX.FAUX.FAUX.FAUX.FAUX.VRAI.
FAUX.FAUX.FAUX.FAUX.FAUX.VRAI.FAUX.FAUX.FAUX.FAUX.FAUX.
FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX};{3.4.5.6.7.8.
9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.
33.34.35.36.37.38.39.40.41.42.43})

Il transmet donc à notre fonction GRAND.VALEUR() la matrice suivante:
GRANDE.VALEUR({FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.
11.FAUX.FAUX.FAUX.FAUX.FAUX.17.FAUX.FAUX.FAUX.FAUX.FAUX.
23.FAUX.FAUX.FAUX.FAUX.FAUX.29.FAUX.FAUX.FAUX.FAUX.FAUX.
FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX.FAUX};1)

b) K: la valeur recherchée étant la plus grande, le rang de la donnée à
renvoyer correspond au rang 1.
GRANDE.VALEUR(SI(Zn="avril";COLONNE(Zn)-2);1) renvoie donc la valeur 29;
valeur qui correspond au numéro de la colonne (ici AC) contenant la plus
grande valeur sur la matrice composée uniquement de la valeur la plus
fréquente contenue sur la plage Zn...
(tu m'suis toujours...?:-)

3) Le numéro de colonne étant maintenant calculé et connu, le numéro de
ligne ne variant pas (ligne2) il ne nous reste plus qu'à composer une
adresse valide pour Excel, et de renvoyer le contenu de cette cellule...
C'est ce que va nous permettre INDIRECT(ADRESSE())
On a donc, avec les éléments calculés précédents:
INDIRECT(ADRESSE(2;29)) qui sera finalement interprété de la façon suivante:
INDIRECT("$AC$2"), soit:


La validation matricielle étant nécessaire dans la mesure ou l'on demandera
à Excel de créer et de travailler en mémoire sur des tableaux successifs,
permettant d'analyser les matrices "virtuelles" utilisées en argument de
fonction.

Voili, voilou...
J'espère que ces quelques lignes n'auront pas obscurci d'avantage les points
que tu souhaitais éclaircir, et/ou qu'elles ne t'auront pas fait vider le
tube d'aspirines...

Ah... j'oubliais...
nb: le point 2) faisait mention de la fonction MAX que nous aurions pu
utiliser à la place de GRANDE.VALEUR(), la formule finale aurait été:
{=INDIRECT(ADRESSE(2;MAX(SI(Zn=INDEX(Zn;EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);));COLONNE(Zn)-2))))}


ChrisV


"ChrisV" a écrit dans le message de news:
ewo0lxy%
et je me retrouve avec 50 fonctions combinées...


Pfff... 9 fonctions, pas 50 ?! ;-)
Pour l'explication, ok pour ce soir, pas le temps maintenant...
(à moins que JP, beaucoup plus habile que moi avec sa plume, ne prenne le
relais...)


ChrisV


"géjoun" a écrit dans le message de news:

Bonjour,

C'est bon cette fois-ci, ta formule fonctionne parfaitement!
Une fois de plus, je m'attendais à une formule assez simple pour faire
ça,
et je me retrouve avec 50 fonctions combinées...

Pourrais-tu me donner quelques explications sur son fonctionnement? (et
qu'apporte le fait que ce soit une matricielle?)

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../



Bonjour Géjoun,

Avec la plage de données E1:AS1 nommée ici Zn
(à saisir sans les { } et valider par Ctrl+Shift+Entrée)

{=INDIRECT(ADRESSE(2;GRANDE.VALEUR(SI(Zn=INDEX(Zn;EQUIV(MAX(NB.SI(Zn;Zn));NB.SI(Zn;Zn);));COLONNE(Zn)-2);1)))}


ChrisV


"géjoun" a écrit dans le message de news:

Bonjour,

je viens de voir ta réponse, c'est bien ce principe que je cherche à
faire,
mais ça me convient qu'aux 3/4 car elle ne fonctionne pas toujours.

Par exemple, lorsqu'on renseigne 2 en E2, au lieu de renvoyer le
numéro de
semaine 8, elle renvoie le numéro 4, et pareil lorsqu'on complète avec
7,
8,
9 ou 10 elle renvoie 12 au lieu de 13.

Je me penche dessus pour essayer de comprendre et voir d'oû ça vient.

Merci!

--
géjoun

/Enlever l'année pour m'écrire.../




Je te propose d'essayer cette formule :

=ENT((DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2)+11-("1/"&ANNEE(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6+4-JOURSEM(DATE(AN;MODE(MOIS(E4:AS4))+1;0)-6;2))))/7)

Il y a sans doute plus concis..

----------
Ange Ounis
----------

Bonjour,

Dans le ficher ci-joint http://cjoint.com/?mfrfXgsGZH , j'essaie
d'obtenir
en C6 le nombre qui se trouve sur la ligne 2 et qui correspond à la
dernière
semaine du mois le plus présent entre E1 et AS1 (suivant comment
est
complété
E2; par exemple, avec 4 en E2, que ça me renvoie 8; et avec 37 en
E2,
que ça
me renvoie 43).

J'ai essayé de modifier des formules que j'ai trouvé en recherchant
dans les
archives, mais j'arrive qu'à obtenir des #VALEUR

Si quelqu'un pouvait m'aider...

Merci!



















Avatar
JLuc
*Bonjour ChrisV*,
Si ca c'est pas de l'explication !! ;-)
Au moins, avec ca, on saisi mieux comment excel calcul
Un grand bravo


--
JLuc

Pensez a regarder ces sites très bien fait, ce sont des mines de trucs
et astuces !
http://www.excelabo.net
http://jacxl.free.fr/
http://dj.joss.free.fr/
C:Program FilesMicrosoft OfficeOffice1036VBALIST.XLS
1 2