Le cabinet ouvre prochainement. Guides et simulateurs sont déjà en libre accès —être informé de l’ouverture
Excel de zéro à héros · Épisode 13 sur 50

La fonction SI avec ET et OU : faire raisonner votre tableau

Épisode 13 : la fonction SI et ses compagnons ET, OU, NON pour classer, signaler et appliquer un taux selon une condition. Cas de contrôle des achats chiffré.

Publié le 6 min de lectureNiveau : DébutantModule 3 : Logique, texte et dates : les formules du quotidienRédaction ExpertiseComptable.ma

En bref
  • SI(test; valeur_si_vrai; valeur_si_faux) fait choisir une valeur à Excel selon un test ; ce test peut combiner plusieurs conditions avec ET (toutes vraies) et OU (au moins une vraie).
  • Les textes se mettent entre guillemets, les nombres et les références non ; les comparaisons utilisent =, <>, <, >, <=, >=.
  • Un SI qui renvoie « OK » ou « À valider » transforme un tableau passif en tableau de contrôle : un coup d’œil, plus besoin de relire ligne à ligne.
  • Les taux, seuils et libellés d’un test ne s’écrivent pas en dur dans la formule : mettez-les dans la feuille Paramètres (épisode 10).

Jusqu’ici, nos formules calculaient toujours la même chose pour chaque ligne. Mais la comptabilité est pleine de règles : « si le montant dépasse 10 000, il faut une validation », « si le client est exonéré, pas de TVA », « si la ligne est au débit, on la classe ici, sinon là ». La fonction SI donne à Excel la capacité de choisir, et ses deux alliées ET et OU de combiner des conditions.

Ce que vous saurez faire à la fin de l’épisode

  • écrire un test avec les opérateurs de comparaison ;
  • utiliser SI pour renvoyer un texte, un nombre ou un calcul ;
  • combiner des conditions avec ET, OU, NON ;
  • construire une colonne de contrôle qui signale ce qui mérite attention ;
  • éviter les erreurs de guillemets et de logique les plus fréquentes.

La fonction SI

=SI(test_logique; valeur_si_vrai; valeur_si_faux)     (anglais : IF)

Excel évalue le test : s’il est vrai, il renvoie le deuxième argument, sinon le troisième. Le test est une comparaison qui donne VRAI ou FAUX.

Opérateur Sens Exemple
= égal à B2="Oui"
<> différent de B2<>"Oui"
> / < supérieur / inférieur B2>10000
>= / <= supérieur ou égal / inférieur ou égal B2>=50000

Premier exemple, un classement : =SI(D2>=0;"Débit";"Crédit") affiche « Débit » pour un solde positif et « Crédit » pour un solde négatif. Deuxième exemple, un calcul : =SI(B2>5000;B2*3%;0) renvoie 3 % du montant au-delà de 5 000, sinon 0.

Règles d’écriture à retenir :

  • un texte se met entre guillemets ("Oui"), un nombre non, une cellule non ;
  • les trois arguments sont séparés par des points-virgules ;
  • vous pouvez omettre le troisième argument : Excel renvoie alors FAUX, ce qui est rarement ce qu’on veut ; écrivez toujours "" (texte vide) si vous voulez une cellule vide.

ET, OU, NON : combiner les conditions

Tableau de vérité des fonctions ET, OU et NON avec des tests VRAI ou FAUX Figure 1 : tableau de vérité. Les colonnes A et B contiennent des tests (par exemple 5>3, qui vaut VRAI) ; la colonne D le résultat de la fonction de la colonne C.

  • =ET(test1; test2; …) renvoie VRAI si tous les tests sont vrais. Avec un test VRAI et un test FAUX : FAUX.
  • =OU(test1; test2; …) renvoie VRAI si au moins un test est vrai. Avec un VRAI et un FAUX : VRAI.
  • =NON(test) inverse : NON(FAUX) vaut VRAI.

Elles se placent dans le premier argument de SI : =SI(ET(B2>10000; D2="Non"); "À valider"; "OK"). Elles s’emboîtent aussi : =SI(ET(B2>0; OU(C2="x"; C2="y")); …).

Le cas : contrôler les achats du mois

Atlas Négoce vérifie le journal des achats avant de payer. Deux règles : (1) toute dépense de plus de 10 000 MAD HT doit avoir été approuvée ; (2) le taux de TVA retenu pour le transport routier et la restauration est de 10 %, 20 % pour le reste (taux simplifiés pour l’exercice ; en pratique, chaque opération se qualifie séparément, voir l’article sur les taux de TVA 2026).

Contrôle des dépenses : la formule SI(ET(B6>10000;D6=“Non”);“À valider”;“OK”) signale uniquement l’agence digitale, 15 000 non approuvée Figure 2 : huit achats. Repère 1 : le taux est choisi par SI(OU(…)) ; repère 2 : le contrôle signale la seule ligne à valider.

Colonne E, le taux de TVA (repère 1), pour la première ligne :

=SI(OU(C2="Transport"; C2="Restauration"); 10%; 20%)

« Si la catégorie est Transport ou Restauration, 10 %, sinon 20 % ». Sur notre journal : Transports Rif et Restaurant Al Bahr sont à 10 %, les six autres lignes à 20 %.

Colonne F, la TVA : =B2*E2. Pour les huit lignes : 2 500,00 ; 690,00 ; 820,00 ; 190,00 ; 3 000,00 ; 156,00 ; 4 400,00 ; 2 000,00, soit 13 756,00 au total.

Colonne G, le contrôle (repère 2) :

=SI(ET(B2>10000; D2="Non"); "À valider"; "OK")

La règle ne signale que les dépenses de plus de 10 000 non approuvées : l’agence digitale (15 000,00 non approuvée) est marquée « À valider ». Le garage Mekki (exactement 10 000,00, non approuvé) est « OK », puisque le test est strictement supérieur ; la dépense de 22 000,00 est « OK » parce qu’elle a été approuvée. Remarquez que la frontière compte : si la règle de l’entreprise est « à partir de 10 000 », il faut >=. Les erreurs de borne (> contre >=) sont les plus fréquentes et les plus coûteuses : relisez toujours la règle à voix haute avec un cas limite.

SI renvoyant un calcul ou un autre SI

Un SI n’est pas limité aux textes : chaque branche peut être une formule.

=SI(B2>=50000; B2*10%; SI(B2>=20000; B2*7%; 0))

Ce SI imbriqué applique 10 % au-delà de 50 000, 7 % entre 20 000 et 50 000, 0 sinon. C’est lisible à deux niveaux, pénible à quatre ou cinq. L’épisode suivant présente SI.CONDITIONS et la recherche dans un barème, bien plus clairs.

Bonnes pratiques

  1. Un seul test par SI : si la formule devient longue, décomposez-la dans des colonnes intermédiaires. Un tableau lisible vaut mieux qu’une formule savante.
  2. Les seuils dans les paramètres : =SI(B2>SeuilValidation; …), avec un nom défini (épisode 10) plutôt que 10 000 en dur.
  3. Tester les cas limites : une valeur juste au-dessous, égale et juste au-dessus du seuil.
  4. Colorer les résultats avec la mise en forme conditionnelle (épisode 29) : « À valider » en orange s’aperçoit mieux que « OK ».
  5. Compter les anomalies : =NB.SI(G2:G9;"À valider") donne le nombre de lignes à traiter (épisode 22).
  6. Ne pas confondre texte et nombre : =SI(D2="Oui";…) ne fonctionne que si la cellule contient bien le mot « Oui » sans espace parasite ; SUPPRESPACE règle ce problème (épisode 15).

Les erreurs classiques

Symptôme Cause Remède
#NOM? Texte sans guillemets "Oui" et non Oui
Renvoie toujours FAUX Comparaison texte/nombre : "5000" n’est pas égal à 5000 Convertir (épisode 2)
Résultat faux pour la valeur du seuil > à la place de >= Relire la règle sur le cas limite
#VALEUR! Un test porte sur une cellule en erreur Traiter l’erreur d’abord (épisode 14)
ET ne renvoie pas ce qu’on attend ET(A1>1; A1<10) écrit ET(1<A1<10) Chaque condition est un test séparé

À vous de jouer

Dans le classeur d’exercice, onglet Achats :

  1. Complétez la colonne E avec =SI(OU(C2="Transport";C2="Restauration");10%;20%), puis la colonne F (=B2*E2).
  2. Complétez la colonne G avec le test de validation et recopiez-le.
  3. Changez l’approbation du garage Mekki en « Oui » et son montant en 10 001,00. Que devient le contrôle ? Remettez ensuite « Non » : que devient-il ?
  4. Ajoutez une règle : les dépenses de la catégorie « Services » supérieures à 20 000 doivent aussi être signalées, qu’elles soient approuvées ou non. Quelle formule écrivez-vous ? (Indice : OU entre les deux règles.)

Correction. Aux étapes 1 et 2, le total de TVA est 13 756,00 et une seule ligne affiche « À valider » (l’agence digitale). À l’étape 3, avec 10 001 non approuvé le contrôle passe à « À valider » (10 001 > 10 000) ; avec « Oui », il redevient « OK ». À l’étape 4, la formule est =SI(OU(ET(B2>10000;D2="Non");ET(C2="Services";B2>20000));"À valider";"OK") : le cabinet de conseil (22 000, Services, approuvé) est alors signalé aussi, ce qui porte le nombre de lignes à valider à 2.

À retenir

  • SI(test; si_vrai; si_faux) : un test, deux issues. Textes entre guillemets.
  • ET : toutes les conditions ; OU : au moins une ; NON : l’inverse. On les place dans le test d’un SI.
  • Relisez chaque règle sur son cas limite : > et >= ne disent pas la même chose.
  • Les seuils et les taux vont dans la feuille Paramètres, pas dans la formule.
  • Au-delà de deux ou trois niveaux, abandonnez les SI imbriqués : c’est l’objet du prochain épisode.

Épisode 14 : SI.CONDITIONS pour les barèmes, et SIERREUR pour traiter proprement les erreurs #N/A et #DIV/0!.

Questions fréquentes

Pourquoi ma formule SI renvoie-t-elle #NOM? ?

Un texte n’est pas entre guillemets (=SI(A2=Oui;…) au lieu de =SI(A2="Oui";…)) ou le nom de la fonction est mal orthographié. Excel interprète un mot sans guillemets comme un nom défini, qu’il ne trouve pas.

Combien de SI peut-on imbriquer ?

Jusqu’à 64 niveaux dans les versions récentes, mais au-delà de trois la formule devient illisible. L’épisode suivant présente SI.CONDITIONS et les tables de correspondance, plus lisibles.

Quelle différence entre ET et OU ?

ET renvoie VRAI seulement si toutes les conditions sont vraies ; OU renvoie VRAI dès qu’une seule est vraie. NON inverse un résultat. On peut les combiner : ET(A>0;OU(B="x";B="y")).

Comment comparer du texte sans tenir compte des majuscules ?

La comparaison avec = ne distingue pas les majuscules : "oui"="Oui" est VRAI. Pour une comparaison sensible à la casse, utilisez EXACT(A2;"Oui"). Attention en revanche aux espaces parasites, qu’il faut supprimer avec SUPPRESPACE.

Rédaction ExpertiseComptable.ma

Articles rédigés par l’équipe du cabinet à partir des textes officiels et de la pratique des missions. Chaque article indique sa date de publication et, le cas échéant, de dernière revue.

Partager :LinkedInFacebookWhatsApp

Articles connexes

Une question sur votre situation ?

Décrivez-nous votre projet : nous vous répondons sous 48 heures ouvrées avec une proposition de lettre de mission.