Bureautique Formule matricielle sous numbers ?

Armandb11

Membre enregistré
26 Juillet 2022
2
0
44
Bonjour à tous,


en demandant sur un forum Excel, une personne m'a trouvé la solution au problème ci-dessous. Par contre, c'est une solution Excel avec une formule matricielle donc valider avec Ctrl+Maj+Entrée
En reportant cette formule sous numbers, cela ne fonctionne pas, même en validant avec Ctrl+Maj+Entrée. Avez-vous une idée ?
voici la formule sous excel : {=INDEX(DECALER($C:$C;0;EQUIV($J$3;$C$2:$G$2;0)-1);EQUIV(L3&I3;$A:$A&$B:$B;0))}
sous Numbers??? et comment on la valide ?

rappel de la problèmatique

je dispose de critères pour définir la surface (d'une habitation). Exemple : une maison de 2 pièces (critère de 1 à 5 pièces) pouvant accueillir 4 personnes (critères de 1 à 20). J'ajoute ensuite mon critère "catégorie" : selon la catégorie choisie (de 1 à 5) la surface minimale de la maison n'est pas la même.


Ce qui me donne une maison de 2 pieces ET pour 4 pers ET pour une catégorie de 3 = un nb présent dans la catégorie, ici "25". Je vous mets la capture d'ecran, je pense que vous verrez de suite de "quoi je parle (!)".

Actuellement, je le fais en manuel en ajoutant des mises en forme conditionnelles pour le nb de pers. et de piece pour me simplifier la lecture mais avec une formule qui couple les catégories, l'idée serait d'automatiser et éviter les erreurs de lecture.


Objectif : la cellule "I7" (surface trouvée en jaune) doit se remplisse automatiquement en fonction :
du nb de pers. (I3) + classement demandé (J3) + Nb de pièce (L3)


J'ai pensé à du Si imbriqué avec des ET mais au vu des données présentes dans le sous tableaux catégories, la formule fera 15km de long et ça risquerait de bloquer. J'ai essayé le si.multiple/condition pas trouvé ou pas réussi à le mettre en application, auriez vous une idée !!????


un grand merci pour votre aide.
 

Fichiers joints

  • Capture d’écran 2022-07-26 à 12.44.38.png
    Capture d’écran 2022-07-26 à 12.44.38.png
    331,3 KB · Affichages: 80
Dernière édition:
j'ai ça en équivalent numbers, mais ça ne fonctionne pas :
avec et sans {}
{INDEX(DECALER($C;0;EQUIV($J$3;$C$2:$G$2;0)−1);EQUIV(L3&I3;$A&$B;0))}
INDEX(DECALER($C;0;EQUIV($J$3;$C$2:$G$2;0)−1);EQUIV(L3&I3;$A&$B;0))
 
Je ne sais pas si c’est le meilleur outil pour ça mais il me semble que tu pourrais utiliser un tableau croisé dynamique :
 
En passant par des calculs intermédiaires

L4 = EQUIV(L3;A) donne la dernière ligne du nombre de pièces choisi (13 dans l’exemple)

L5 = NB.SI(A;L3) nombre de ligne du nombre de pièces (7)

Élaboration d’une plage de recherche en fonction de la valeur L3

L6 = ADRESSE(L4−L5+1;2;type-adresse;style-adresse)&":"&ADRESSE(L4;7;type-adresse;style-adresse;tableau) résultat = $B$7:$G$13

I9 « Résultat » = RECHERCHEV(I3;INDIRECT(L6);J3+1;FAUX)
 
En passant par des calculs intermédiaires

L4 = EQUIV(L3;A) donne la dernière ligne du nombre de pièces choisi (13 dans l’exemple)

L5 = NB.SI(A;L3) nombre de ligne du nombre de pièces (7)

Élaboration d’une plage de recherche en fonction de la valeur L3

L6 = ADRESSE(L4−L5+1;2;type-adresse;style-adresse)&":"&ADRESSE(L4;7;type-adresse;style-adresse;tableau) résultat = $B$7:$G$13


I9 « Résultat » = RECHERCHEV(I3;INDIRECT(L6);J3+1;FAUX)