Formule Excel: différence minimale si non vide -

Table des matières

Formule générique

(=MIN(IF((rng1"")*(rng2""),rng1-rng2)))

Sommaire

Pour calculer la différence minimale entre deux ensembles de valeurs, en ignorant les cas où l'une ou l'autre des valeurs est vide, vous pouvez utiliser une formule matricielle basée sur les fonctions MIN et IF. Dans l'exemple illustré, la formule en F4 est:

(=MIN(IF((B5:B12"")*(C5:C12""),B5:B12-C5:C12)))

qui renvoie 115, le minimum du coût de vente, en ignorant les cas où l'une ou l'autre des valeurs est vide.

Remarque: il s'agit d'une formule matricielle et doit être saisie avec Ctrl + Maj + Entrée.

Explication

Dans l'exemple illustré, l'objectif est de calculer la différence minimale des ventes moins le coût, mais uniquement lorsque les deux valeurs ont été saisies. Si l'une ou l'autre des valeurs est vide, le résultat doit être ignoré. Pour confirmer que les deux valeurs sont disponibles, la fonction IF est configurée pour utiliser la logique booléenne avec cette expression:

(B5:B12"")*(C5:C12"")

Étant donné que chaque plage contient 8 cellules, le résultat de cette opération est un tableau comme celui-ci:

(1;1;1;0;1;1;0;0)

Ce tableau agit comme un filtre. Dans les cas où la valeur est 1, IF permet aux valeurs de passer à MIN. Les valeurs de différence réelles sont calculées avec une autre opération de tableau:

B5:B12-C5:C12

qui génère ce résultat:

(150;255;125;1100;150;115;-890;1025)

Une fois le test logique évalué, le tableau passé dans la fonction MIN ressemble à ceci:

(150;255;125;FALSE;150;115;FALSE;FALSE)

Notez que la «valeur de différence» pour les lignes où les ventes ou le coût sont vides est désormais FAUX. La fonction MIN ignore automatiquement les valeurs FALSE et renvoie le minimum de nombres restants, 115.

Différence maximale en ignorant les blancs

Pour renvoyer la différence maximale en ignorant les valeurs vides, vous pouvez remplacer MAX par MIN:

(=MAX(IF((B5:B12"")*(C5:C12""),B5:B12-C5:C12)))

Cette formule fonctionne de la même manière que celle expliquée ci-dessus.

Avec MINIFS et colonne d'aide

La fonction MINIFS peut être utilisée pour résoudre ce problème, mais elle nécessite l'utilisation d'une colonne d'aide avec une formule comme celle-ci:

=B5-C5

Avec la formule ci-dessus dans la colonne D, MINIFS peut être utilisé comme ceci:

=MINIFS(D5:D12,B5:B12,"",C5:C12,"")

Ce n'est pas une formule matricielle et n'a pas besoin d'être entré avec Ctrl + Maj + Entrée.

Articles intéressants...