Rechercher la valeur du dessus d'une case sur une colonne donnée Le sujet est résolu

Y compris Writer et toute autre question en lien avec les suites bureautiques Open Source
p
picbille
Nouveau venu
Nouveau venu
Messages : 2
Inscrit le : 28 décembre 2018
Version d'Excel : Calc 18.04.1 FR

Message par picbille » 28 décembre 2018, 18:15

Bonjour, je souhaite récupérer la valeur de la case du dessus de la première case égale à zéro.

Par exemple la liste de valeur est une colonne :

14
12
6
2
0
0
0
0

Je souhaite récupérer le 2.
Comment faire ? Le but est de coder le pgcd à la main proprement sans avoir des #Err : 502 de partout.
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 8'697
Appréciations reçues : 48
Inscrit le : 6 avril 2007
Version d'Excel : 2010

Message par Yvouille » 28 décembre 2018, 18:31

Salut,

Si tes données sont en colonne A, en B1 par exemple, place
=PETITE.VALEUR(A:A;NB.SI(A:A;0)+1)

Crodialement.
1 membre du forum aime ce message.
Yvouille


:btres:
Avatar du membre
Patrice33740
Membre fidèle
Membre fidèle
Messages : 380
Appréciations reçues : 28
Inscrit le : 27 juillet 2014
Version d'Excel : FR, 2007, 2003, 2013, 2016

Message par Patrice33740 » 28 décembre 2018, 19:02

picbille a écrit :
28 décembre 2018, 18:15
Bonjour, je souhaite récupérer la valeur de la case du dessus de la première case égale à zéro.
S'il y a toujours au moins une cellule égale à zéro, pour obtenir celle située au dessus :
=INDEX(A:A;EQUIV(0;A:A;0)-1)
1 membre du forum aime ce message.
Cordialement
Patrice
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 8'697
Appréciations reçues : 48
Inscrit le : 6 avril 2007
Version d'Excel : 2010

Message par Yvouille » 28 décembre 2018, 20:25

Salut Patrice,

Effectivement que si les valeurs sont toujours dans un ordre croissant, ta formule fonctionne également très bien. Ce ne serait cependant pas le cas si l’ordre était ……… ‘’désordonné’’, mais difficile de savoir cela tant que Picbille ne revient pas à la charge.

Dans cette attente, je propose une troisième variante dans le fichier ci-joint ainsi que la démonstration de la différence entre nos propositions.

Amicalement.
picbille.xls
(27.5 Kio) Téléchargé 13 fois
1 membre du forum aime ce message.
Yvouille


:btres:
Avatar du membre
Patrice33740
Membre fidèle
Membre fidèle
Messages : 380
Appréciations reçues : 28
Inscrit le : 27 juillet 2014
Version d'Excel : FR, 2007, 2003, 2013, 2016

Message par Patrice33740 » 28 décembre 2018, 20:56

Re,
Yvouille a écrit :
28 décembre 2018, 20:25
[...] Ce ne serait cependant pas le cas si l’ordre était ……… ‘’désordonné’’
Ma formule répond scrupuleusement à la question, quel que soit l'ordre des valeurs :
Bonjour, je souhaite récupérer la valeur de la case du dessus de la première case égale à zéro.
EQUIV(0;A:A;0) pointe la première case égale à zéro
EQUIV(0;A:A;0)-1 pointe la case du dessus de la première case égale à zéro
INDEX(A:A;EQUIV(0;A:A;0)-1) récupère la valeur de la case du dessus de la première case égale à zéro

Ce qui n'est pas le cas de tes formules qui récupèrent la plus petite valeur supérieure à zéro, c'est très probablement ce que voudrais picbille mais c'est pas ce qu'il a demandé d'où l'importance de formuler les questions le plus précisément possible.
1 membre du forum aime ce message.
Cordialement
Patrice
Avatar du membre
mbbp
Passionné d'Excel
Passionné d'Excel
Messages : 6'376
Appréciations reçues : 238
Inscrit le : 29 mars 2014
Version d'Excel : 2007 FR

Message par mbbp » 28 décembre 2018, 21:37

Bonsoir le forum,
=INDEX(B:B;EQUIV(0;B:B;0)-1)
INDEX.png
INDEX.png (7.06 Kio) Vu 2152 fois
1 membre du forum aime ce message.
Avatar du membre
mbbp
Passionné d'Excel
Passionné d'Excel
Messages : 6'376
Appréciations reçues : 238
Inscrit le : 29 mars 2014
Version d'Excel : 2007 FR

Message par mbbp » 28 décembre 2018, 22:20

Re,

Ou :
=INDEX(B:B;EQUIV(MIN(B:B);B:B;0)-1)
1 membre du forum aime ce message.
p
picbille
Nouveau venu
Nouveau venu
Messages : 2
Inscrit le : 28 décembre 2018
Version d'Excel : Calc 18.04.1 FR

Message par picbille » 30 décembre 2018, 12:29

Je vous remercie de vos réponses et je vous prie de m'excuser de mon retour si tard.

En effet, je pense que le plus naturel et le plus simple pour rechercher la première valeur au-dessus d'une valeur nulle est d'utiliser EQUIV et INDEX.

Bonne fin d'année, meilleurs vœux
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message