Syntaxe
La fonction SI.NON.DISP s’écrit de la façon suivante :
=SI.NON.DISP( formule ; valeur_si_na )
Les arguments de la fonction sont :
valeur
– il s’agit ici de saisir la formule qui pourra renvoyer l’erreur #NA.valeur_si_na
– la valeur que l’on souhaite afficher à la place de #N/A.
La fonction SI.NON.DISP est une formule introduite dans Office 365. Elle permet de gérer très facilement les erreurs #N/A. Il s’agit d’un message courant affiché par Excel lorsque la formule ne trouve pas de valeur. Les fonctions Excel les plus courantes renvoyant cette erreur sont :
#N/A n’étant pas réellement une erreur en tant que telle, puisqu’il s’agit d’indiquer qu’aucune valeur n’a été trouvée, la fonction SI.NON.DISP permet d’afficher un autre message ou de neutraliser tout message.
Comment utiliser SI.NON.DISP ?
Pour utiliser la fonction SI.NON.DISP, il suffit de placer en tant que premier argument de notre fonction la formule pouvant renvoyer le message #N/A puis d’indiquer en tant que second argument le message que l’on souhaite faire apparaître.
=SI.NON.DISP( RECHERCHEV(...) ; "Aucune valeur trouvée" )
--> Si la RECHERCHEV renvoie la valeur #N/A
le message "Aucune valeur trouvée" sera renvoyé
=SI.NON.DISP( EQUIV(...) ; "" )
--> Si la fonction EQUIV renvoie la valeur #N/A
une valeur vide (cellule vide) sera renvoyée
=SI.NON.DISP( RECHERCHEX(...) ; SI(...) )
--> Si la RECHERCHEX renvoie la valeur #N/A
Excel renverra le résultat de la fonction SI
La fonction SI.NON.DISP, en cas de #N/A, peut renvoyer :
- un message (ex: « Aucune valeur trouvée »);
- une valeur vide que l’on viendra écrire comme ceci
""
; - une autre formule (ex : SI(…) ).
Cette dernière solution est notamment intéressante lorsque votre valeur clé de recherche peut se situer dans plusieurs colonnes. La fonction SI.NON.DISP permet d’indiquer à Excel que si la première RECHERCHEV n’a pas trouvé de résultat, il faut effectuer la seconde RECHERCHEV. Élément pouvant également être intéressant pour faire des recherches dans plusieurs onglets.
Utiliser la fonction SI.NON.DISP ou SIERREUR ?
La fonction SI.NON.DISP ne traite que l’erreur #N/A. La fonction SIERREUR va traiter l’ensemble des erreurs pouvant apparaître. Dans bien des cas, le message d’erreur affiché par Excel (ex: #NOM) indiquera que votre formule contient une erreur et que celle-ci n’est pas opérationnelle. C’est pourquoi la spécificité de la fonction SI.NON.DISP fait sa force.
=SI.NON.DISP( RECHERCHEVVVVVV(...) ; "" )
--> La fonction RECHERCHEV est mal orthographiée
le message #NOM sera renvoyé
=SIERREUR( RECHERCHEVVVVVV(...) ; "" )
--> La fonction RECHERCHEV est mal orthographiée
un message vide ("") sera renvoyé
Utiliser la fonction SI.NON.DISP ou la fonction SI et la fonction ESTNA ?
La fonction ESTNA est très proche de la fonction SI.NON.DISP puisqu’elle vérifie si la formule affiche #N/A. Si c’est le cas, elle renverra la valeur VRAI
. Dans le cas contraire, elle renverra la valeur FAUX
.
Associée à la fonction SI elle permet d’afficher dans la cellule un message si la formule de recherche renvoie la valeur #N/A et d’afficher un autre message ou une formule si l’erreur #N/A n’est pas présente.
Les cas où cette solution est intéressante sont les situations dans lesquelles vous ne voulez pas voir apparaître le résultat de la recherche mais simplement savoir si la valeur est présente dans votre liste.
Par exemple, il peut m’arriver de comparer deux listings de salariés. Si je veux vérifier que les salariés de la première liste sont présents dans la seconde, je vais utiliser une formule de la forme suivante :
=SI(
ESTNA( RECHERCHEV( col_liste_1 ; col_liste_2 ; 1 ; FAUX) ) ;
"non présent" ;
"présent"
)
Formules en lien
Fonctions en lien
- Fonction ET
- Fonction OU
- Fonction NON
- Fonction SI
- Fonction ESTERR
- Fonction ESTERREUR
- Fonction ESTNA
- Fonction RECHERCHEV
- Fonction RECHERCHEH
- Fonction RECHERCHEX
- Fonction EQUIV