Comment effectuer un test logique sur Excel : découvrir les fonctions ESTERREUR, ESTERR, ESTNA, ESTREF, ESTNUM, ESTTEXTE, ESTNONTEXTE,…
Dans ce tutoriel, nous allons découvrir une série de fonctions destinées à l’analyse de valeurs de cellules. Ces fonctions commençant par EST permettent de vérifier si le contenu d’une valeur ou d’une cellule correspond à un type de données en particulier (valeur numérique, texte, erreur…).
Téléchargement
Vous pouvez télécharger le fichier d'exemple de cet article en cliquant sur le lien suivant :
Tutoriel Vidéo
1. Présentation
Excel dispose d’une palette de fonctions qui permettent de tester le contenu d’une cellule ou une valeur donnée.
Il s’agit de fonctions logiques qui permettent d’obtenir un résultat exprimé sous la forme d’une valeur booléenne, c’est-à-dire que celui-ci sera égal à VRAI si le test est positif, et égal à FAUX dans le cas contraire.
Il existe douze fonctions EST que nous allons maintenant découvrir.
2. La fonction ESTERREUR()
La fonction ESTERREUR() permet de savoir si le résultat d’une cellule ou d’une formule renvoi une erreur.
Dans cet exemple, nous effectuons une division très simple de deux valeurs (a et b) :
Lorsque la valeur de b est différente de zéro, ce calcul ne pose aucun problème.
En revanche, si nous modifions la valeur de b pour lui donner la valeur de zéro, alors Excel nous retourne une erreur, étant donné qu’il n’est pas possible de diviser un nombre par une valeur nulle.
Nous pouvons alors utiliser la fonction ESTERREUR() pour personnaliser le comportement d’Excel dans ce cas-là.
=SI(ESTERREUR(B7/B8);"Division par zéro impossible !";"B7/B8")
La fonction ESTERREUR() renvoie VRAI en présence de n’importe quelle erreur Excel : #N/A, #VALEUR!, #REF!, #DIV/0!, #NOMBRE!, #NOM? et #NUL!
3. La fonction ESTERR()
La fonction ESTERR() ressemble fortement à la fonction précédente.
En effet, celle-ci renverra la valeur VRAI en présence d’une erreur, mais contrairement à la fonction ESTERREUR(), la fonction ESTERR() teste toutes les erreurs en dehors de #N/A.
L’erreur #N/A est renvoyée la plupart du temps par les fonctions de recherche (RECHERCHEV, RECHERCHEH, EQUIV,…), lorsque la valeur recherché n’existe pas.
Pour ce nouvel exemple, nous avons trois valeur cellules A, B et C avec trois valeurs correspondantes :
Nous récupérons ensuite la valeur de l’une de ces cellules avec la fonction INDEX-EQUIV :
=INDEX(B15:B17;EQUIV(A20;A15:A17;))
Sauf que si nous souhaitons récupérer la valeur d’une cellule inconnue, Excel nous renverra alors une erreur #N/A :
Nous pouvons intercepter cette erreur avec la fonction ESTERREUR() comme vu juste avant :
= SI(ESTERREUR(INDEX(B15:B17;EQUIV(A20;A15:A17;)));"La valeur D est inconnue !";INDEX(B15:B17;EQUIV(A20;A15:A17;)))
Par contre, la fonction ESTERR() retournera la valeur FAUX :
=SI(ESTERR(INDEX(B15:B17;EQUIV(A20;A15:A17;)));"La valeur D est inconnue !";INDEX(B15:B17;EQUIV(A20;A15:A17;)))
4. La fonction ESTNA()
La fonction ESTNA() permet encore une fois de tester si un résultat est une erreur, mais en ne focalisant le test cette fois-ci que sur l’erreur #N/A :
=SI(ESTNA(INDEX(B15:B17;EQUIV(A20;A15:A17;)));"La valeur D est inconnue !";INDEX(B15:B17;EQUIV(A20;A15:A17;)))
5. La fonction ESTREF()
La fonction ESTREF() est permet quant à elle encore de repérer une erreur dans une cellule ou une valeur, il s’agit de l’erreur #REF!, qui correspond à une référence invalide ou indisponible.
Repartons de l’exemple vu au tout début de ce tutoriel :
Nous y effectuons une division de deux cellules (B24 par B25).
Pour obtenir l’erreur #REF!, nous sélectionnons toute la ligne 25, que nous supprimons :
La cellule B25 est alors supprimée et formule devient alors :
=B24/#REF!
Nous pouvons tester le résultat de cette cellule pour afficher un résultat personnalisé :
=SI(ESTREF(B25);"Une cellule est supprimée";"")
En principe, il est rare qu’une cellule soit supprimée intentionnellement, nous n’aurons donc que très rarement besoin d’utiliser la fonction ESTREF().
6. Les fonctions ESTTEXTE() et ESTNONTEXTE()
La fonction ESTTEXTE() retourne VRAI si la valeur testée est un texte, et FAUX dans le cas contraire :
Il existe également la fonction ESTNONTEXTE() qui renvoie le résultat inverse, c’est-à-dire VRAI dans tous cas où la valeur testée n’est pas un texte, et FAUX s’il s’agit bien d’un test.
7. La fonction ESTNUM()
La fonction ESTNUM() retourne VRAI si la valeur testée est une valeur numérique, et FAUX dans le cas contraire :
Il peut bien entendu s’agir de toutes types de nombres : entier, décimal, date et même un résultat de formule :
8. LA fonction ESTLOGIQUE()
La fonction ESTLOGIQUE() permet de tester si une valeur est logique, c’est-à-dire que sa valeur est égale à VRAI ou FAUX :
9. La fonction ESTVIDE()
La fonction ESTVIDE permet de savoir si une cellule ou une chaîne est vide et ne contient aucun caractère :
10. La fonction ESTFORMULE()
La fonction ESTFORMULE() permet de savoir si le résultat d’une cellule est obtenu en utilisant une formule :
Ici le résultat de la cellule A33 est obtenu avec une simple formule :
=A32-2
11. Les fonctions EST.PAIR() et EST.IMPAIR()
Comme leur nom l’indique, ces dernières fonctions permettent de tester si un nombre est paire ou impaire :
Attention, comme nous pouvons nous en rendre compte ici, seules les valeurs numériques peuvent être testées avec les fonctions EST.PAIR() et EST.IMPAIR().
Toutes les autres valeurs retournerons en effet une erreur #VALEUR!