Formules matricielles - incompréhension

Bonjour,

Pourriez-vous m'éclairer et m'expliquer pourquoi deux formules, a priori pas très différentes, ne répondent pas de la même façon ?

J'ai deux séries X et Y :

x

y

110
220
330
440

La formule =RECHERCHEX(2.5; x; y;;-1) renvoie 20

La formule =RECHERCHEX(2.5; x; y;;1) renvoie 30

=> La formule =RECHERCHEX(2.5; x; y;;-1):RECHERCHEX(2.5; x; y;;1) renvoie bien la matrice colonne 20;30 :

20
30

Ensuite j'essaye de travailler en enlevant le dernier terme de x et de y

=FILTRE(x;x<MAX(x)) me donne la série 1;2;3 et FILTRE(y;x<MAX(x)) la série 10;20;30

FILTRE(x;x<MAX(x))

FILTRE(y;x<MAX(x))

110
220
3
30

Et donc les résultats avec RECHERCHEX ne changent pas :

La formule =RECHERCHEX(2.5; FILTRE(x;x<MAX(x)) ; FILTRE(y;x<MAX(x));;-1) renvoie 20

La formule =RECHERCHEX(2.5; FILTRE(x;x<MAX(x)) ; FILTRE(y;x<MAX(x));;1) renvoie 30

Jusque-là, tout me paraît normal.

Là où ça se corse, c'est quand j'essaye d'assembler ces valeurs dans une matrice colonne comme précédemment :

=RECHERCHEX(2.5;x;y;;1):RECHERCHEX(2.5;x;y;;-1) me donnait la matrice colonne 20;30

et par contre, si à la place des séries x et y j'utilise les séries filtrées, =RECHERCHEX(2.5;FILTRE(x;x<MAX(x));FILTRE(y;x<MAX(x));;1):RECHERCHEX(2.5;FILTRE(x;x<MAX(x));FILTRE(y;x<MAX(x));;-1) me renvoie une erreur #VALEUR!

Auriez-vous une explication ?

Merci pour votre aide,

Miguel

Bonjour à tous !

C'est effectivement étrange.....un souci Microsoft ? .

Si on utilise la fonction EXCLURE, la formule retourne bien une matrice :

=RECHERCHEX(2,5;EXCLURE(x;-1);EXCLURE(y;-1);;1):RECHERCHEX(2,5;EXCLURE(x;-1);EXCLURE(y;-1);;-1)

Hello,

Avec la fonction ASSEM.V comme suit ça fonctionne bien

=ASSEMB.V(RECHERCHEX(2,5;FILTRE(x;x<MAX(x));FILTRE(y;x<MAX(x));;-1);RECHERCHEX(2,5;FILTRE(x;x<MAX(x));FILTRE(y;x<MAX(x));;1)

J'ai également un souci de compréhension sur ta formule en cellule B16:

=RECHERCHEX(2,5;x;y;;1):RECHERCHEX(2,5;x;y;;-1)

Le premier RECHERCHEX renvoie 30 et le deuxième renvoie 20 mais quand tu fais ton "combiné" ça te renvoie 20 puis 30, c'est assez étrange

@+

Merci JFL pour la solution avec la fonction EXCLURE (plus lisible que FILTRE).

Egalement merci à BAROUTE78 pour la solution ASSEMB.V que je ne connaissais pas (j'avais cherché à concaténer, joindre, etc... mais je ne suis jamais tombé sur cette formule Assemb.v) !

(Et effectivement je me suis un peu mélangé les pinceaux entre 20-30 ou 30-20, selon -1 ou +1 dans RECHERCHEX, mais c'est bien une erreur de retranscription de ma part).

Mon problème est donc contourné, merci à vous.

Miguel

Bonjour à tous de nouveau !

J'ai également un souci de compréhension sur ta formule en cellule B16:

=RECHERCHEX(2,5;x;y;;1):RECHERCHEX(2,5;x;y;;-1)

Le premier RECHERCHEX renvoie 30 et le deuxième renvoie 20 mais quand tu fais ton "combiné" ça te renvoie 20 puis 30, c'est assez étrange

Dans sa version "matrice" RECHERCHEX(.....):RECHERCHEX(.....), l'ordre de la matrice retour est lié au vecteur d'origine. Dans l'exemple donné, (C2:C5) 20 est avant 30.

Rechercher des sujets similaires à "formules matricielles incomprehension"