Formule Excel: calculer uniquement si elle n'est pas vide -

Table des matières

Formule générique

=IF(criteria,formula(),"")

Sommaire

Pour exécuter une formule uniquement lorsqu'une ou plusieurs cellules ne sont pas vides, vous pouvez utiliser la fonction IF avec un critère logique approprié. Dans l'exemple illustré, la formule en E5 est:

=IF(COUNT(C5:C7)=3,SUM(C5:C7),"")

Puisque C7 n'a aucune valeur dans l'écran ci-dessus, la formule n'affiche aucun résultat. Dans l'écran ci-dessous, C7 contient un nombre et la somme s'affiche:

Explication

Le but de cet exemple est de vérifier l'entrée avant de calculer un résultat. Le point clé à comprendre est que toute formule valide peut être remplacée. La fonction SOMME n'est utilisée qu'à titre d'exemple. La logique peut également être ajustée de plusieurs façons pour s'adapter à la situation.

Dans l'exemple illustré, nous utilisons la fonction IF avec la fonction COUNT. Le critère est une expression basée sur la fonction COUNT, qui ne compte que les valeurs numériques:

COUNT(C5:C7)=3 // returns TRUE or FALSE

Tant que la plage contient trois nombres (c'est-à-dire que les 3 cellules ne sont pas vides), le résultat est TRUE et IF exécutera la fonction SUM. Sinon, le résultat est FALSE et IF renvoie une chaîne vide (""). Puisque C7 n'a aucune valeur dans l'écran ci-dessus, la formule n'affiche aucun résultat.

Il existe de nombreuses façons de vérifier les cellules vides, et plusieurs options sont expliquées ci-dessous.

Avec COUNTBLANK

La fonction COUNTBLANK compte les cellules vides dans une plage, nous pouvons donc écrire une formule légèrement plus compacte comme celle-ci:

=IF(COUNTBLANK(C5:C7),"",SUM(C5:C7))

Si COUNTBLANK renvoie n'importe quel nombre sauf zéro, la fonction IF évaluera comme TRUE et ne retournera rien (""). Si COUNTBLANK renvoie zéro, IF est évalué comme FALSE et renvoie la somme.

Avec ISBLANK

Dans l'exemple illustré, les cellules d'entrée sont toutes dans la même plage contiguë. Dans les cas où les cellules ne sont pas ensemble, vous pouvez utiliser une formule comme celle-ci:

=IF(OR(ISBLANK(C5),ISBLANK(C6),ISBLANK(C7)),"",SUM(C5:C7))

Cet exemple adopte une approche littérale avec la fonction ISBLANK. Parce que nous voulons vérifier les trois cellules en même temps, nous devons utiliser ISBLANK trois fois dans la fonction OR. C'est le test logique dans IF:

OR(ISBLANK(C5),ISBLANK(C6),ISBLANK(C7)

Lorsque OR renvoie TRUE (au moins une cellule est vide), IF renvoie une chaîne vide (""). Lorsque OU renvoie FALSE (aucune cellule n'est vide), IF exécute la fonction SOMME et renvoie le résultat:

SUM(C5:C7)

Avec des opérateurs logiques

La fonction ISBLANK peut être remplacée par des opérateurs logiques standard comme ceci:

=IF(OR(C5="",C6="",C7=""),"",SUM(C5:C7))

Alternativement, nous pouvons combiner l'opérateur non égal à () avec la fonction AND comme ceci:

=IF(AND(C5"",C6"",C7""),SUM(C5:C7),"")

Notez que la fonction SOMME a été déplacée vers le résultat TRUE. Il ne fonctionnera que si C5 et C6 et C5 ne sont pas vides.

Avec COUNTA

Enfin, vous pouvez utiliser la fonction COUNTA pour vérifier la saisie numérique ou de texte:

=IF(COUNTA(C5:C7)=3,SUM(C5:C7),"")

Tant que la plage C5: C5 contient trois valeurs (nombres ou texte), le résultat sera TRUE et la fonction SUM s'exécutera. Cela n'a pas vraiment de sens pour l'exemple montré (qui nécessite une entrée numérique) mais il peut être utilisé dans d'autres situations.

Articles intéressants...