Il peut arriver que vous deviez calculer le plus petit (ou le plus grand)

valeur d’une plage, sauf si la valeur la plus petite (ou la plus grande) est zéro. Par exemple, vous pouvez avoir une plage de valeurs telles que \ {0, 3, 1, 4, 2}. Dans ce cas, la valeur la plus basse est zéro, mais la valeur que vous voulez vraiment renvoyer est 1.

Il n’y a pas de fonction intrinsèque dans Excel pour renvoyer une valeur comme stipulé ici. Cependant, vous pouvez créer une formule qui fera l’affaire. En supposant que la plage de valeurs que vous souhaitez analyser se trouve en C4: C8, la formule suivante renverra la valeur non nulle la plus basse:

=IF(MIN(C4:C8)=0,SMALL(C4:C8,COUNTIF(C4:C8,"=0")+1),MIN(C4:C8))

Cette formule utilise la fonction MIN pour déterminer si la valeur la plus basse de la plage est zéro. Si tel est le cas, la fonction SMALL est utilisée pour dériver la valeur la plus basse, à l’exclusion des zéros. (La fonction COUNTIF renvoie le nombre de zéros dans la plage, et indique donc à SMALL quel élément de la plage choisir.)

Une petite modification de la formule permet de l’utiliser pour renvoyer le plus grand nombre différent de zéro dans une plage:

=IF(MAX(C4:C8)=0,LARGE(C4:C8,COUNTIF(C4:C8,"=0")+1),MAX(C4:C8))

Ces formules fonctionneront pour n’importe quelle plage, sauf si la plage est entièrement composée de zéros. Dans ce cas, un #NUM! l’erreur est renvoyée.

Si vous utilisez Excel 2019 ou Excel dans Office 365, vous pouvez utiliser la nouvelle fonction MINIFS. Il serait utilisé de cette manière pour cet exemple:

=MINIFS(C4:C8,C4:C8,"<>"&0)

Plus d’informations sur la fonction MINIFS peuvent être trouvées sur cette page de support Microsoft Office:

https://support.office.com/en-gb/article/minifs-function-6ca1ddaa-079b-4e74-80cc-72eef32e6599

Si vous préférez utiliser des formules matricielles, vous pouvez rendre la formule beaucoup plus courte. Cette version renvoie la valeur non nulle la plus basse:

=MIN(IF(C4:C8=0,9^9,C4:C8))

N’oubliez pas de le saisir en utilisant Ctrl + Maj + Entrée. Il souffre également d’un problème si toutes les valeurs de la plage sont 0; dans ce cas, il renvoie 387420489, soit 9 ^ 9. (Il renverrait également cette valeur si toutes les valeurs de la plage étaient supérieures à 387420489.)

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (9750) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365. Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu d’Excel ici:

link: / excel-Deriving_High_and_Low_Non-Zero_Values ​​[Dérivation des valeurs hautes et basses non nulles].