Trouver la valeur de la meme ligne colonne precedente

Fermé
NPD - 5 avril 2013 à 12:46
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 - 6 avril 2013 à 15:04
Bonjour,

Je dispose de deux colonnes (Aet B) et environ 30lignes
une cellule (C1) fait reference a une donnée dans la matrice OU est une valeur proche de la matrice (en colonne B) (ex: C1= 450 en Colonne B= 455) donc déjà il doit se dire que c'est cette reference qu'il faut prendre en compte, s'il n'y a pas de 450.
Et ensuite je souhaite avoir la reference en colonne A de la même ligne
Voici la formule que j'ecris mais ca ne vas pas ... :(

=INDEX(A1:A30;SOMMEPROD((A1:B30=C1)*LIGNE(A1:A30)))
et je valide telle une formule matricielle...

Qlq'un sait ce qu'il y a d'incorrect ?
Merci

A voir également:

2 réponses

Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
5 avril 2013 à 23:27
Bonjour,
Au passage, si j'ai bien compris vos explication, essayez avec cette formule (normale) :
=INDEX(A1:A30;EQUIV(C1;B1:B30;-1))


0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
6 avril 2013 à 10:10
Bonjour
outre la solution de Le Pingou (salut au passage, mon ami) qui est plus simple, la votre fonctionne correctement mais ne nécessite pas d'entré matricielle car SOMMEPROD est déjà matriciel par défaut.

Par contre, l'erreur est probablement dans l'adresse A1:B30=C1 alors qu'elle devrait être B1:B30=C1 (en s'adressant à une seule colonne!)

Crdlmnt

0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
6 avril 2013 à 11:43
Bonjour Vaucluse,
J'ai un petit doute car le critère [A1:B30=C1] de la fonction [SOMMEPROD] ne permet pas de trouver la valeur la plus proche de la valeur chercher donc pas valable pour son cas [C1=450] et doit trouver [455] en colonne [B].
Amicales salutations
Le Pingou
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
6 avril 2013 à 12:50
Effectivement, je me suis attaché au libellé de la formule sans lire le reste.
Par contre, je n'arrive pas à faire fonctionner correctement EQUIV avec -1:
renvoie #N/A si la liste est classée
renvoie une sottise si la liste n'est pas classée??
S'il s'agit de trouver la valeur directement supérieur dans une liste classée, je dirais bien:
=INDEX(A1:A30;EQUIV(C1;B1:B30)+1)
Reste à savoir si il faut choisir la valeur directement supèrieure ou s'il faut trouver la valeur ayant le moins d'écart,. Ca ce fait, mais c'est un peu plus compliqué
par exemple:
=SI(C1-INDEX(A1:A30;EQUIV(C1;B1:B30))>INDEX(A1:A30;EQUIV(C1;B1:B30)+1)-C1;INDEX(A1:A30;EQUIV(C1;B1:B30)+1);SI(C1-INDEX(A1:A30;EQUIV(C1;B1:B30))=

crdlmnt
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
6 avril 2013 à 15:04
Bonjour Vaucluse,
Je ne sais pas trop que dire, j'ai utilisé les données selon la description, nous ne savons même pas ce qui se trouve dans les 2 colonnes [A] et [B].
Effectivement si on applique sur un colonne [B] contenant le même nombre de valeurs que la [A], ma propossition ne marche pas.
N'étant encore pas Mme Soleil .....!
Amicales salutations
Le Pingou
0