Trouver le nombre le plus proche de zéro

Lord Nelson

XLDnaute Occasionnel
Bonsoir tout le monde !

J'ai une série de nombres, par exemple :

A1 1
A2 -2
A3 -0,15
A4 -0,2
A5 -0,5
A6 0,4

et j'aimerais trouver le nombre le plus proche de 0, en l'occurrence -0,15.

J'ai bien une piste avec une matricielle mais il me semble qu'il devrait y avoir plus simple.

=SI(MIN(SI(A1:A6>=0;A1:A6;""))<=ABS(MAX(SI(A1:A6<0;A1:A6;"")));MIN(SI(A1:A6>=0;A1:A6;""));MAX(SI(A1:A6<0;A1:A6;"")))

Avez-vous une idée ?

Merci

Horatio
 

Tibo

XLDnaute Barbatruc
Re : Trouver le nombre le plus proche de zéro

Bonjour,

à essayer, également avec une matricielle :

Code:
=INDEX(A1:A20;EQUIV(MIN(ABS(A1:A20));A1:A20;0))

à valider par CTRL + MAJ + ENTREE

A1:A20 représente la plage contenant les nombres.

@+
 

abcd

XLDnaute Barbatruc
Re : Trouver le nombre le plus proche de zéro

Bonjour,

Je ne parviens pas à faire fonctionner la formule de Tibo.

En attendant :
=SI(NB.SI(A1:A6;MIN(ABS(A1:A6)));MIN(ABS(A1:A6));-MIN(ABS(A1:A6)))
formule matricielle à valider par Ctrl+Maj+Entrée

abcd
 

Lord Nelson

XLDnaute Occasionnel
Re : Trouver le nombre le plus proche de zéro

Bonsoir Tibo, Abcd,

Tibo, ta formule ne fonctionne qu'avec un résultat positif (Equiv ne trouve pas le nombre négatif)...

Abcd, c'est très astucieux ce comptage, je l'adopte !

Merci à tout les deux.

A bientôt pour de prochaines aventures.

Horatio
 

Tibo

XLDnaute Barbatruc
Re : Trouver le nombre le plus proche de zéro

Bonjour,

Effectivement, il manquait un petit quelque chose dans la formule proposée hier.

Avec celle-ci, ça devrait mieux fonctionner :

Code:
=INDEX(A1:A20;EQUIV(MIN(ABS(A1:A20));ABS(A1:A20);0))

Toujours matricielle

Bonne journée à tous

@+
 

abcd

XLDnaute Barbatruc
Re : Trouver le nombre le plus proche de zéro

Salut Tibo,

Effectivement elle fonctionne.

Entretemps j'ai pu simplifier la formule que j'avais proposée :
=SI(NB.SI(A:A;MIN(ABS(A1:A6)));1;-1)*MIN(ABS(A1:A6))
Toujours matricielle.

Le problème de ces formules est qu'il faut spécifier la longueur de la plage (A1:A6 ou A1:A20) de façon exacte, faute de quoi les formules renvoient 0.

=SI(NB.SI(A:A;MIN(ABS(DECALER(A1;;;NBVAL(A:A)))));1;-1)*MIN(ABS(DECALER(A1;;;NBVAL(A:A))))
résoud le problème

En nommant MIN(ABS(DECALER(A1;;;NBVAL(A:A)))) plage, cela devient plus simple et la formule n'est plus matricielle :

=SI(NB.SI(A:A;plage);1;-1)*plage

abcd
 

Lord Nelson

XLDnaute Occasionnel
Re : Trouver le nombre le plus proche de zéro

Bonsoir Tibo, Abcd,

Effectivement Tibo ça marche bien avec EQUIV, un grand merci.

Abcd, c'est une bonne idée l'expression nommée pour échapper à la formule matricielle.
J'ai donc défini "Plage" avec la formule =MIN(ABS(Feuil1!$A$1:$A$6))
(Plus facile à expliquer que DECALER...) et j'ai appliqué le NB.SI sans difficulté.

Un grand bravo à vous deux !
Respect.

Horatio
 

Discussions similaires

Réponses
6
Affichages
509

Statistiques des forums

Discussions
312 606
Messages
2 090 176
Membres
104 435
dernier inscrit
ZAMAZ