Qu'est-ce que la fonction SIGNE ?
SIGNE (SIGN en anglais) te sert dès que seul le sens d'un nombre t'intéresse, pas son ampleur : tu veux juste savoir si un écart est positif, négatif ou nul pour orienter une décision, sans te soucier de sa taille exacte.
Ça peut sembler basique, mais SIGNE devient puissante dès que tu la combines avec d'autres fonctions. C'est elle qui détecte une variation de tendance sur un tableau de bord commercial, catégorise automatiquement les écarts budgétaires, ou signale les stocks en rupture sans écrire un seul SI imbriqué.

Comprendre chaque paramètre de la fonction SIGNE
nombre
: c'est le nombre dont tu veux connaître le signeÇa peut être une valeur directe comme -42, une référence de cellule comme B5, ou le résultat d'un calcul comme A1-A2. Excel évalue d'abord l'expression, puis détermine son signe.
Si le résultat est strictement supérieur à 0, SIGNE retourne 1. S'il est strictement inférieur à 0, elle retourne -1. S'il est exactement 0, elle retourne 0.
Attention : Si la cellule contient du texte (même un nombre stocké en texte), SIGNE retourne #VALEUR!. Convertis-le d'abord avec CNUM() : =SIGNE(CNUM(A1)).

Exemples pratiques pas à pas
Comment connaître le sens d'un écart avec la fonction SIGNE
La revue budgétaire arrive et on va te demander, poste par poste, si la ligne a tenu. Ton tableau liste le montant prévu et le montant réalisé de chaque poste, et tu veux d'abord savoir dans quel sens penche l'écart avant de t'occuper de son ampleur. La fonction SIGNE lit la différence entre les deux colonnes et répond 1, -1 ou 0, une valeur nette que tu peux ensuite trier, filtrer ou réutiliser dans un calcul.
- 1Dans une cellule, écris
=SIGNE(. - 2En 1er argument : saisis le calcul dont tu veux connaître le sens,
D2-C2. Excel retranche le montant prévuC2au montant réaliséD2et n'en garde que la différence, ici 2 000 €, un nombre strictement positif. C'est ce signe, et non le montant, que la fonction va lire. - 3Ferme la parenthèse et appuie sur Entrée, puis recopie la formule sur toute la colonne Sens écart.
=SIGNE(D2-C2)Comment combiner la fonction SIGNE avec la fonction CHOISIR pour afficher un libellé
Ton suivi de trésorerie est juste, mais personne ne le lit : ce sont des colonnes de montants et il faut s'arrêter sur chaque ligne pour comprendre le mois. Tu as le flux net mensuel et tu veux qu'un libellé clair s'affiche tout seul à côté, selon que le mois se termine en sortie, à l'équilibre ou en entrée. La fonction SIGNE ramène le flux à trois cas seulement, et la fonction CHOISIR pioche le libellé qui correspond.
- 1Dans une cellule, écris
=CHOISIR(. - 2En 1er argument : écris l'index qui désignera le bon libellé,
SIGNE(B2)+2. La fonction SIGNE ramène le flux netB2à -1, 0 ou 1, et le+2décale ces trois valeurs vers 1, 2 et 3, les seuls rangs que la fonction CHOISIR sait lire. - 3En 2ᵉ argument : écris le libellé du rang 1, celui d'un flux négatif,
"Sortie nette". - 4En 3ᵉ argument : écris le libellé du rang 2, celui d'un flux nul,
"Équilibre". - 5En 4ᵉ argument : écris le libellé du rang 3, celui d'un flux positif,
"Entrée nette". - 6Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas pour étiqueter chaque mois.
=CHOISIR(SIGNE(B2)+2; "Sortie nette"; "Équilibre"; "Entrée nette")Comment corriger l'erreur #VALEUR! de la fonction SIGNE avec la fonction CNUM
Tu récupères chaque semaine un export de ton logiciel de gestion, et les variations arrivent en texte au lieu d'arriver en nombres. La fonction SIGNE ne sait travailler que sur des nombres, donc toute ta colonne se remplit de l'erreur #VALEUR! et le tableau est inutilisable tel quel. En convertissant la valeur juste avant de la lui passer, tu récupères le sens de chaque variation sans repasser derrière l'export à la main.
- 1Dans une cellule, écris
=SIGNE(. - 2En 1er argument : écris la conversion à effectuer avant la lecture du signe et referme-la,
CNUM(B2). La celluleB2contient un texte qui ressemble à un nombre,-12,5, et la fonction SIGNE refuse le texte ; la fonction CNUM le transforme en vrai nombre juste avant que SIGNE n'en lise le sens. - 3Ferme la parenthèse de la fonction SIGNE et appuie sur Entrée. Celle de la fonction CNUM a déjà été refermée à l'étape précédente. La fonction lit alors une valeur strictement négative et renvoie -1, sans plus aucune erreur dans la colonne.
=SIGNE(CNUM(B2))#VALEUR!. CNUM fait la traduction en amont (le texte -12,5 devient le nombre -12,5), et SIGNE n'a plus qu'à en lire le sens, ici négatif.
Les erreurs fréquentes avec la fonction SIGNE
Comme SIGNE ne prend qu'un nombre, ce qui coince vient presque toujours de ce qu'on lui donne à manger. Si la cellule contient du texte, même un chiffre tapé en format texte, elle renvoie #VALEUR! au lieu de -1, 0 ou 1.
L'autre piège n'est pas une erreur affichée mais un faux résultat : une cellule vide est lue comme un zéro, donc SIGNE répond 0 alors que la donnée manque tout simplement.
Erreur #VALEUR! avec du texte en entrée
Si tu appliques SIGNE sur une cellule contenant du texte (même un nombre stocké en texte), Excel retourne #VALEUR!. C'est l'erreur la plus fréquente avec cette fonction.
Solution : Convertis le texte en nombre avec CNUM() : =SIGNE(CNUM(A1)). Mieux encore, corrige la source pour que les nombres soient bien formatés dès le départ.
Confusion entre SIGNE et ABS
Beaucoup de débutants confondent SIGNE (qui retourne -1, 0 ou 1) avec ABS (qui retourne la valeur absolue). SIGNE(-50) donne -1, alors que ABS(-50) donne 50.
Solution : Retiens la distinction : SIGNE te dit « quel type de nombre », ABS te dit « combien sans le signe ». Utilise SIGNE pour catégoriser, ABS pour calculer des écarts.
Cellules vides traitées comme zéro
Si tu appliques SIGNE sur une cellule vide, Excel la considère comme zéro et retourne 0. Cela peut fausser une analyse si tu ne l'anticipes pas.
Solution : Utilise une condition pour traiter les cellules vides séparément : =SI(ESTVIDE(A1);"Non renseigné";SIGNE(A1)).

SIGNE vs ABS vs SI vs ET
Prends SIGNE quand tu veux juste savoir dans quel sens va un nombre (positif, négatif, nul) et le brancher direct dans CHOISIR ou un calcul. Passe à ABS si c'est l'ampleur de l'écart qui t'intéresse, pas son sens.
SI et ET ne deviennent utiles que dès que tes catégories dépassent les trois cas du signe ou croisent plusieurs conditions : là, SIGNE atteint sa limite et la vraie logique conditionnelle reprend la main.
| Critère | SIGNE | ABS | SI | ET |
|---|---|---|---|---|
| Retourne le signe | ✅ Oui (-1, 0, 1) | ❌ Non | ⚠️ Avec conditions | ❌ Non |
| Retourne la valeur absolue | ❌ Non | ✅ Oui | ❌ Non | ❌ Non |
| Permet des conditions | ❌ Non | ❌ Non | ✅ Oui | ✅ Oui (logique) |
| Simple à utiliser | ⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ | ⭐⭐ |
| Cas d'usage typique | Détecter tendances | Calculer écarts | Logique complexe | Tests multiples |

Astuces avancées avec SIGNE
Combiner SIGNE avec CHOISIR pour des libellés dynamiques
Au lieu d'écrire des SI imbriqués, utilise =CHOISIR(SIGNE(valeur)+2;"Négatif";"Zéro";"Positif"). Le +2 transforme -1, 0, 1 en 1, 2, 3, exactement l'index que CHOISIR attend.
C'est la combinaison la plus productive avec SIGNE : une ligne de formule gère trois cas, et tu changes les libellés sans toucher à la logique.
Comparer deux nombres sans SI
Pour savoir si A1 est supérieur, inférieur ou égal à B1, écris simplement =SIGNE(A1-B1) : 1 si A1 > B1, -1 si A1 < B1, 0 si égaux. C'est plus court qu'une condition explicite et le résultat est directement exploitable dans un calcul.
Tu peux même t'en servir comme entrée dans CHOISIR pour afficher un texte, ou dans SOMMEPROD pour compter les lignes d'un signe précis.
Détecter les changements de tendance dans une série
Pour identifier le moment où une série de données change de signe (une valeur passe de positive à négative, ou inversement), compare les signes de deux cellules consécutives : =SIGNE(A2)<>SIGNE(A1). Quand cette expression retourne VRAI, il y a eu un changement de tendance.
C'est un outil simple mais efficace pour l'analyse de séries temporelles ou le suivi de cash-flow.
Questions fréquentes
SIGNE retourne uniquement trois valeurs : 1 pour un nombre positif, -1 pour un nombre négatif, et 0 pour zéro. Il n'existe aucune autre valeur de retour possible. C'est ce qui rend cette fonction si prévisible et fiable dans les formules complexes.
Oui, absolument. Même un nombre aussi petit que 0,0001 retournera 1, et -0,0001 retournera -1. SIGNE détecte le signe peu importe la taille du nombre, tant qu'il n'est pas exactement égal à zéro.
SIGNE retourne uniquement le signe du nombre (-1, 0 ou 1) tandis que ABS retourne la valeur absolue (le nombre sans son signe). Par exemple, SIGNE(-50) donne -1, alors que ABS(-50) donne 50.
Utilise SIGNE pour catégoriser ou orienter une logique, ABS pour neutraliser le signe avant un calcul.
Pour inverser un signe, multiplie simplement par -1 : =A1*-1 ou =-A1. SIGNE ne modifie pas le nombre, elle indique seulement s'il est positif, négatif ou nul.
Si tu veux renvoyer la valeur absolue avec le signe opposé, combine les deux : =-ABS(A1) force toujours un résultat négatif.
Oui. =SIGNE(A1-B1) retourne 1 si A1 est supérieur à B1, -1 si A1 est inférieur, et 0 s'ils sont égaux. C'est une façon concise de faire une comparaison numérique directement exploitable dans d'autres formules.
Pour aller plus loin
Continue sur ta lancée après la fonction SIGNE : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir



