La fonction SI (IF en anglais) est la reine des fonctions logiques d'Excel : elle prend une décision à ta place. Si la condition que tu poses est vraie, elle renvoie un premier résultat ; sinon, elle en renvoie un autre. C'est le point de départ de presque toute l'automatisation dans Excel, et sans doute la fonction que tu utiliseras le plus souvent.
Concrètement, c'est elle qui classe tes clients en VIP ou Standard, attribue une mention selon une note, calcule une prime seulement si l'objectif est atteint, ou signale un stock passé sous le seuil critique. Elle transforme un tableau figé en véritable outil de décision.
Syntaxe de la fonction SI
=SI(test_logique; valeur_si_vrai; [valeur_si_faux])Comprendre chaque paramètre de la fonction SI
Les trois arguments de SI suivent un ordre strict : d'abord ce qu'on teste, puis ce qu'on affiche si c'est vrai, enfin ce qu'on affiche sinon. Seul ce dernier est facultatif, et c'est aussi celui qu'on oublie le plus souvent.
test_logique
: la condition à évaluerElle doit pouvoir être VRAIE ou FAUSSE. Tu peux utiliser les opérateurs de comparaison : =, <> (différent), >, <, >=, <=.
Ce test peut comparer des nombres (A1>100), des textes (B1="Paris"), des dates (C1>AUJOURDHUI()) ou même utiliser d'autres fonctions (GAUCHE(A1;2)="FR"). Tu peux aussi combiner plusieurs conditions avec ET() ou OU() pour des tests complexes.
Astuce : Le test logique peut contenir du texte : =SI(A1="Paris"; "France"; "Autre") fonctionne parfaitement. N'oublie pas les guillemets autour du texte.
valeur_si_vrai
: ce qu'Excel renvoie si la condition est VRAIEÇa peut être un texte entre guillemets ("Oui"), un nombre (100), une référence (B1), ou même une autre formule.
C'est ici que la puissance de SI se révèle : tu peux imbriquer d'autres fonctions. Par exemple, SI(A1>100; SOMME(B1:B10); 0) calcule une somme seulement si la condition est vraie. Tu peux même imbriquer un autre SI pour créer des conditions en cascade.
valeur_si_faux
: ce qu'Excel renvoie si la condition est FAUSSE(facultatif)Si tu omets ce paramètre, Excel renvoie FAUX (qui peut s'afficher comme 0 dans certains contextes). Utilise "" pour afficher une cellule vide.
Ce paramètre est optionnel mais il est recommandé de toujours le spécifier pour éviter les surprises. Une formule explicite comme =SI(A1>10; "Oui"; "Non") est plus claire qu'une formule qui laisse Excel décider quoi afficher quand la condition est fausse.
Astuce : Mets "" comme valeur_si_faux pour afficher une cellule vide plutôt que 0 ou FAUX quand la condition n'est pas remplie : =SI(A1>10; "OK"; "").
Pas envie d'écrire la formule SI à la main ?
Génère-la avec notre IAExemples pratiques pas à pas
Commercial : afficher si l'objectif est atteint
Tu es commercial ou responsable des ventes et tu dois suivre les performances de ton équipe. Chaque vendeur a un objectif mensuel de 10 000 € et tu veux voir immédiatement qui l'a atteint et qui est en retard. Plutôt que de vérifier manuellement chaque ligne, tu laisses SI faire le travail automatiquement.
| A | B | C | |
|---|---|---|---|
| 1 | Vendeur | Ventes | Statut |
| 2 | Marie | 12 500 € | Objectif atteint ✓ |
| 3 | Pierre | 8 200 € | En dessous |
| 4 | Sophie | 10 000 € | Objectif atteint ✓ |
| 5 | Lucas | 9 800 € | En dessous |
=SI(B2>=10000; "Objectif atteint ✓"; "En dessous")La fonction analyse la valeur de B2 : si elle est supérieure ou égale à 10 000, Excel affiche "Objectif atteint ✓", sinon "En dessous". Tu peux ensuite appliquer une mise en forme conditionnelle pour colorer les cellules en vert ou rouge selon le résultat.
RH : calculer une prime conditionnelle
Tu travailles aux ressources humaines et tu dois préparer le calcul des primes de fin d'année. La règle est simple : les employés avec plus de 5 ans d'ancienneté reçoivent une prime de fidélité de 500 €, les autres n'en reçoivent pas. Avec SI, tu peux calculer automatiquement ce montant pour chaque employé.
| A | B | C | |
|---|---|---|---|
| 1 | Employé | Ancienneté | Prime |
| 2 | Alice | 7 ans | 500 € |
| 3 | Bob | 3 ans | 0 € |
| 4 | Claire | 12 ans | 500 € |
=SI(B2>5; 500; 0)Ici, la fonction retourne directement un nombre (500 ou 0) plutôt que du texte. Tu peux ensuite utiliser SOMME sur la colonne Prime pour calculer le budget total des primes. Cette approche est plus pratique que d'écrire "500 €" : Excel peut faire des calculs sur les nombres.
Prof : attribuer une mention selon la note
Tu es enseignant et tu veux attribuer automatiquement une mention : Très Bien (≥16), Bien (≥14), Assez Bien (≥12), Passable (≥10), ou Insuffisant. Avec 4+ conditions, préfère SI.CONDITIONS (Excel 2016+) qui est beaucoup plus lisible.
| A | B | C | |
|---|---|---|---|
| 1 | Élève | Note | Mention |
| 2 | Emma | 17 | Très Bien |
| 3 | Hugo | 14 | Bien |
| 4 | Léa | 11 | Assez Bien |
| 5 | Tom | 8 | Insuffisant |
=SI(B2>=16; "Très Bien"; SI(B2>=14; "Bien"; SI(B2>=12; "Assez Bien"; SI(B2>=10; "Passable"; "Insuffisant"))))La formule teste les seuils du plus exigeant au plus bas : dès qu'un test est vrai, elle s'arrête et renvoie la mention correspondante. Emma (17) déclenche le premier test (≥16) et obtient « Très Bien ».
Astuce de pro : Au-delà de 3-4 niveaux, les SI imbriqués deviennent illisibles. Range tes seuils dans une table à côté et laisse RECHERCHEV en mode approximatif faire le tri, comme ça : =RECHERCHEV(B1; $E$1:$F$5; 2; VRAI). Et si un jour tu veux changer un seuil, par exemple passer la mention Bien de 14 à 15, tu modifies juste la table, sans toucher à la formule.
Logistique : vérifier deux conditions avec ET
Tu gères les expéditions et tu veux marquer "Prioritaire" les commandes de plus de 1 000 € passées aujourd'hui.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Commande | Montant | Date | Priorité |
| 2 | #001 | 1 500 € | Aujourd'hui | Prioritaire |
| 3 | #002 | 800 € | Aujourd'hui | Standard |
| 4 | #003 | 2 000 € | Hier | Standard |
=SI(ET(B2>1000; C2=AUJOURDHUI()); "Prioritaire"; "Standard")La formule combine SI et ET() : la commande n'est « Prioritaire » que si les deux conditions (montant supérieur à 1 000 € ET date du jour) sont vraies en même temps. ET() renvoie VRAI uniquement quand toutes les conditions le sont.
Service client : identifier les clients VIP
Tu travailles au service client et tu veux marquer comme VIP les clients qui ont plus de 50 000 € d'achats ou plus de 10 commandes.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Client | Total achats | Nb commandes | Statut |
| 2 | Entreprise A | 60 000 € | 8 | VIP |
| 3 | Société B | 30 000 € | 15 | VIP |
| 4 | Client C | 20 000 € | 5 | Standard |
=SI(OU(B2>50000; C2>10); "VIP"; "Standard")Ici, la formule combine SI et OU() : il suffit qu'une seule condition soit vraie pour que le client passe « VIP ». OU() renvoie VRAI dès qu'au moins une condition l'est.
Mets la fonction SI en pratique avec un exercice corrigé
M'entraînerLes erreurs fréquentes avec la fonction SI
La plupart des erreurs avec SI tournent autour de deux oublis : les guillemets et les parenthèses.
Un texte tapé sans guillemets, Oui au lieu de "Oui", et Excel le cherche comme une plage nommée : d'où le #NOM?. Une parenthèse manquante dans un SI imbriqué, et la formule entière refuse de se valider.
Les trois pièges ci-dessous couvrent la grande majorité des cas.
Oublier les guillemets autour du texte
=SI(A1>10; Oui; Non) provoque une erreur #NOM? car Excel cherche des plages nommées « Oui » et « Non » au lieu de les traiter comme du texte.
Solution : Mets toujours le texte entre guillemets : =SI(A1>10; "Oui"; "Non").
Trop de parenthèses ou pas assez
Avec les SI imbriqués, il est facile de perdre le compte des parenthèses, ce qui provoque une erreur de syntaxe.
Solution : Chaque SI ouvert doit être fermé : compte tes parenthèses, autant de ( que de ). Excel colorie les parenthèses par paires pour t'aider.
Comparer du texte sans guillemets
=SI(A1=Paris; "France"; "Autre") ne fonctionne pas car Paris est interprété comme une plage nommée, pas comme du texte.
Solution : Mets le texte comparé entre guillemets : =SI(A1="Paris"; "France"; "Autre").
SI vs SI.CONDITIONS vs SI.MULTIPLE vs CHOISIR
SI suffit tant que tu n'as qu'un seul test à faire, avec deux issues possibles. Quand les cas se multiplient, empiler des SI imbriqués devient vite illisible et pénible à corriger.
C'est là que trois alternatives prennent le relais : SI.CONDITIONS pour enchaîner des seuils, SI.MULTIPLE pour comparer une valeur à une liste de cas, CHOISIR pour piocher par un numéro de position.
Le tableau ci-dessous t'aide à trancher selon ta version d'Excel et le nombre de cas à gérer.
| Critère | SI | SI.CONDITIONS | SI.MULTIPLE | CHOISIR |
|---|---|---|---|---|
| Nb de conditions | 2 (vrai/faux) | Jusqu'à 127 | Jusqu'à 126 | Jusqu'à 254 |
| Lisibilité | ⭐⭐ (si imbriqué) | ⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ |
| Compatibilité | ✅ Toutes versions | ⚠️ Excel 2016+ | ⚠️ Excel 2019+ | ✅ Toutes versions |
| Cas d'usage | 1-2 conditions | 3+ conditions | Comparer une valeur à une liste | Index numérique |
Astuces avancées avec SI
Gère les erreurs proprement avec SIERREUR
Quand ta RECHERCHEV ne trouve pas le code, elle renvoie une erreur #N/A. Plutôt que d'empiler SI et ESTERREUR, utilise SIERREUR, qui gère tout en une fois : =SIERREUR(RECHERCHEV(A1; Tarifs; 2; FAUX); "Tarif inconnu") renvoie le tarif trouvé, ou ton message de secours si le code n'existe pas.
Ta feuille reste propre, sans erreur affichée.
Additionne sous condition avec SOMME.SI
Pour totaliser les ventes d'une seule région, n'écris pas un SI en matriciel : SOMME.SI est faite pour ça. =SOMME.SI(B:B; "Nord"; C:C) additionne le chiffre d'affaires du Nord en une ligne, et NB.SI fait le même travail pour compter.
Dès que tu dois croiser plusieurs critères (la région ET le mois), passe à SOMME.SI.ENS.
Localise l'erreur dans un SI imbriqué
Quand une cascade de SI renvoie un résultat inattendu, sélectionne le bout de formule qui pose problème dans la barre de formule et appuie sur F9 : Excel affiche la vraie valeur de ce morceau, ce qui localise tout de suite la condition fautive.
Appuie sur Échap pour ressortir sans valider la modification.
Questions fréquentes sur la fonction SI
Combien de SI imbriqués peut-on utiliser dans Excel ?
Excel permet techniquement jusqu'à 64 niveaux de SI imbriqués, ce qui est largement suffisant pour tous les cas d'usage. Cependant, en pratique, au-delà de 3-4 niveaux d'imbrication, ta formule devient difficile à lire et à maintenir.
Si tu as besoin de tester plus de 4 conditions, préfère utiliser SI.CONDITIONS disponible depuis Excel 2016, ou CHOISIR qui est disponible dans toutes les versions. Ces alternatives rendent tes formules beaucoup plus claires.
Quelle est la différence entre SI et SI.CONDITIONS ?
SI teste une seule condition et renvoie deux résultats possibles (vrai ou faux). Pour tester plusieurs conditions avec SI, tu dois imbriquer les fonctions les unes dans les autres, ce qui devient rapidement complexe.
SI.CONDITIONS (disponible depuis Excel 2016) te permet de lister plusieurs paires condition/résultat à la suite, sans imbrication. Par exemple, =SI.CONDITIONS(A1>=16;"Très Bien";A1>=14;"Bien";A1>=12;"Assez Bien") est beaucoup plus lisible que des SI imbriqués.
Comment faire un SI avec plusieurs conditions (ET/OU) ?
Pour combiner plusieurs conditions dans un seul test, utilise les fonctions ET() ou OU() à l'intérieur de SI. ET() renvoie VRAI uniquement si toutes les conditions sont vraies : =SI(ET(A1>10; B1<5); "Oui"; "Non") ne renvoie "Oui" que si A1 est supérieur à 10 ET B1 est inférieur à 5.
OU() renvoie VRAI si au moins une condition est vraie : =SI(OU(A1>100; B1="VIP"); "Prioritaire"; "Standard") marque comme prioritaire si le montant dépasse 100 OU si le client est "VIP".
Pourquoi ma fonction SI renvoie 0 au lieu de rien ?
Quand tu omets le troisième argument (valeur_si_faux), Excel renvoie la valeur logique FAUX qui s'affiche comme 0 dans les cellules numériques. C'est un comportement par défaut qui surprend beaucoup d'utilisateurs.
Pour afficher une cellule visuellement vide quand la condition est fausse, utilise une chaîne vide "" comme troisième argument. Par exemple : =SI(A1>10; "OK"; "") affichera "OK" ou une cellule vide, jamais 0.
SI peut-elle renvoyer une autre formule ?
Absolument ! C'est l'une des grandes forces de SI. Tu peux imbriquer n'importe quelle formule Excel dans les arguments valeur_si_vrai ou valeur_si_faux.
Par exemple : =SI(A1>100; SOMME(B1:B10); MOYENNE(B1:B10)) calcule une somme si A1 dépasse 100, sinon une moyenne. Tu peux même imbriquer des fonctions de recherche comme RECHERCHEV, ou d'autres fonctions logiques. Cela permet de créer des formules très puissantes qui s'adaptent au contexte.
Pour aller plus loin
Les fonctions similaires : SI.CONDITIONS, SI.MULTIPLE, SIERREUR, ET, OU
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois

