Comprendre la Fonction SI et ses Limites
La fonction SI est un outil fondamental d'Excel qui permet d'effectuer un test logique et de renvoyer une valeur si le test est vrai, et une autre valeur si le test est faux. Sa syntaxe de base est la suivante :
=SI(test_logique; valeur_si_vrai; valeur_si_faux)
Bien que simple et efficace pour les conditions uniques, la fonction SI montre ses limites lorsqu'il s'agit de gérer des scénarios impliquant plusieurs conditions. C'est là que les SI multiples, ou SI imbriqués, entrent en jeu.
Qu'est-ce qu'un SI Multiple (SI Imbriqué) ?
Un SI multiple, aussi appelé SI imbriqué, consiste à placer une fonction SI à l'intérieur d'une autre fonction SI, dans la partie valeur_si_faux. Cela permet de créer une chaîne de tests logiques, chacun étant évalué séquentiellement jusqu'à ce qu'une condition soit vraie ou que la dernière condition soit atteinte. C'est une manière d'étendre la logique conditionnelle d'Excel.
Utiliser les SI Imbriqués : Guide Pas à Pas
Voici comment construire une formule SI imbriquée, étape par étape, avec un exemple concret.
Exemple : Attribution de Notes en Fonction d'un Score
Imaginons que vous souhaitiez attribuer des notes (A, B, C, D, E) en fonction d'un score numérique situé dans la cellule A1. La grille de notation est la suivante :
- Score >= 90 : A
- 80 <= Score < 90 : B
- 70 <= Score < 80 : C
- 60 <= Score < 70 : D
- Score < 60 : E
Voici la formule SI imbriquée correspondante :
=SI(A1>=90;"A";SI(A1>=80;"B";SI(A1>=70;"C";SI(A1>=60;"D";"E"))))
Explication de la Formule :
SI(A1>=90;"A";...): Si le score en A1 est supérieur ou égal à 90, la formule renvoie "A". Sinon, elle passe à la fonctionSIsuivante.SI(A1>=80;"B";...): Si le score en A1 est supérieur ou égal à 80, la formule renvoie "B". Sinon, elle passe à la fonctionSIsuivante.SI(A1>=70;"C";...): Si le score en A1 est supérieur ou égal à 70, la formule renvoie "C". Sinon, elle passe à la fonctionSIsuivante.SI(A1>=60;"D";"E"): Si le score en A1 est supérieur ou égal à 60, la formule renvoie "D". Sinon, elle renvoie "E".
Comment construire la formule étape par étape :
- Commencez par la première condition :
=SI(A1>=90;"A";...) - Remplacez les points de suspension
...par une autre fonctionSIpour la condition suivante. - Répétez l'étape 2 pour chaque condition supplémentaire.
- La dernière fonction
SIaura la valeurvaleur_si_fauxcorrespondant au cas où aucune des conditions précédentes n'est vraie.
Conseils :
- Utilisez des parenthèses pour clarifier la structure de la formule et faciliter la lecture.
- Testez votre formule avec différentes valeurs pour vous assurer qu'elle fonctionne correctement.
- N'hésitez pas à utiliser l'outil d'évaluation de formule d'Excel (Onglet Formules > Évaluation de formule) pour comprendre comment Excel évalue votre formule pas à pas.
Limites des SI Imbriqués
Bien que puissants, les SI imbriqués peuvent devenir difficiles à lire et à maintenir, surtout lorsque le nombre de conditions augmente. Excel a une limite au nombre de fonctions SI imbriquées autorisées (généralement 64 dans les versions récentes), mais il est fortement déconseillé d'approcher cette limite, car la formule deviendrait extrêmement complexe et sujette aux erreurs.
Alternatives aux SI Imbriqués
Heureusement, Excel offre des alternatives plus élégantes et plus faciles à gérer pour les conditions multiples.
1. Utiliser les Fonctions ET et OU
Les fonctions ET et OU permettent de combiner plusieurs tests logiques au sein d'une même fonction SI.
ET(test1; test2; ...): RenvoieVRAIsi tous les tests sont vrais, sinon renvoieFAUX.OU(test1; test2; ...): RenvoieVRAIsi au moins un des tests est vrai, sinon renvoieFAUX.
Exemple : Vérification d'une Plage de Valeurs
Supposons que vous souhaitiez vérifier si une valeur en A1 se situe entre 10 et 20 (inclus). Vous pouvez utiliser la fonction ET de la manière suivante :
=SI(ET(A1>=10;A1<=20);"Valeur dans la plage";"Valeur hors de la plage")
Exemple : Vérification de Plusieurs Conditions Possibles
Supposons que vous souhaitiez vérifier si une valeur en A1 est égale à "A" ou à "B". Vous pouvez utiliser la fonction OU de la manière suivante :
=SI(OU(A1="A";A1="B");"Valeur A ou B";"Autre valeur")
2. Utiliser la Fonction RECHERCHEV (Lookup Vertical)
La fonction RECHERCHEV est particulièrement utile lorsque vous avez une table de correspondance entre des valeurs et des résultats. Elle recherche une valeur dans la première colonne d'une table et renvoie une valeur correspondante d'une autre colonne.
Syntaxe :
=RECHERCHEV(valeur_recherchée; table_matrice; no_index_col; [valeur_proche])
valeur_recherchée: La valeur à rechercher.table_matrice: La plage de cellules contenant la table de correspondance.no_index_col: Le numéro de la colonne danstable_matricecontenant la valeur à renvoyer.[valeur_proche]: Facultatif.VRAI(ou omis) pour une correspondance approximative (la première colonne detable_matricedoit être triée par ordre croissant).FAUXpour une correspondance exacte.
Exemple : Attribution de Notes avec RECHERCHEV
Reprenons l'exemple de l'attribution de notes en fonction d'un score. Créez une table de correspondance dans votre feuille de calcul, par exemple :
| Score | Note |
|---|---|
| 0 | E |
| 60 | D |
| 70 | C |
| 80 | B |
| 90 | A |
Si cette table se trouve dans la plage D1:E5, la formule RECHERCHEV serait :
=RECHERCHEV(A1;D1:E5;2;VRAI)
Avantages de RECHERCHEV :
- Plus facile à lire et à maintenir que les
SIimbriqués, surtout avec un grand nombre de conditions. - La table de correspondance peut être facilement modifiée sans avoir à modifier la formule.
3. Utiliser la Fonction CHOISIR (Choose)
La fonction CHOISIR permet de renvoyer une valeur à partir d'une liste, en fonction d'un numéro d'index.
Syntaxe :
=CHOISIR(no_index; valeur1; valeur2; ...)
no_index: Un nombre compris entre 1 et le nombre de valeurs fournies. Il indique quelle valeur doit être renvoyée.valeur1; valeur2; ...: Les valeurs à partir desquelles choisir.
Exemple : Attribution de Jours de la Semaine
Supposons que vous ayez un numéro de jour de la semaine (1 pour lundi, 2 pour mardi, etc.) dans la cellule A1. Vous pouvez utiliser la fonction CHOISIR pour afficher le nom du jour correspondant :
=CHOISIR(A1;"Lundi";"Mardi";"Mercredi";"Jeudi";"Vendredi";"Samedi";"Dimanche")
Limitations de CHOISIR :
CHOISIRest utile lorsque vous avez un ensemble fixe de valeurs possibles pour l'index.- Elle n'est pas adaptée aux plages de valeurs ou aux conditions complexes.
4. Utiliser la Fonction IFS (Excel 365 et versions ultérieures)
La fonction IFS (Introduite dans Excel 365) est spécialement conçue pour simplifier les SI multiples. Elle permet de spécifier une série de conditions et de valeurs correspondantes, sans avoir à imbriquer les fonctions SI.
Syntaxe :
=IFS(test1; valeur_si_vrai1; test2; valeur_si_vrai2; ...)
Exemple : Attribution de Notes avec IFS
Reprenons l'exemple de l'attribution de notes en fonction d'un score. Avec la fonction IFS, la formule devient :
=IFS(A1>=90;"A";A1>=80;"B";A1>=70;"C";A1>=60;"D";VRAI;"E")
Avantages de IFS :
- Plus facile à lire et à écrire que les
SIimbriqués. - Plus concise et moins sujette aux erreurs de parenthèses.
- Le dernier test peut être
VRAIpour capturer tous les cas restants.
Bonnes Pratiques et Erreurs à Éviter
- Clarifiez votre logique : Avant de commencer à écrire votre formule, définissez clairement les conditions et les résultats attendus.
- Testez votre formule : Utilisez différentes valeurs pour vous assurer que votre formule fonctionne correctement dans tous les cas.
- Utilisez des noms de cellules : Au lieu d'utiliser des références de cellules directes (par exemple, A1), utilisez des noms de cellules (par exemple, "Score") pour rendre votre formule plus lisible et plus facile à comprendre.
- Commentez vos formules : Utilisez la fonction
Npour ajouter des commentaires à vos formules sans affecter leur fonctionnement. Par exemple :=SI(A1>10;"Grand";"Petit") + N("Vérifie si la valeur en A1 est supérieure à 10") - Évitez d'imbriquer trop de SI : Si vous avez plus de 3 ou 4 conditions, envisagez d'utiliser une alternative comme
RECHERCHEVouIFS. - Vérifiez les types de données : Assurez-vous que les types de données que vous comparez sont compatibles. Par exemple, ne comparez pas un nombre à une chaîne de texte.
- Utilisez des références absolues : Lorsque vous utilisez
RECHERCHEVou d'autres fonctions qui font référence à une plage de cellules, utilisez des références absolues (par exemple,$D$1:$E$5) pour éviter que la plage ne change lorsque vous copiez la formule.
Conclusion
Gérer des conditions SI multiple dans Excel peut sembler complexe au premier abord, mais avec une bonne compréhension des différentes fonctions et techniques disponibles, vous pouvez automatiser vos feuilles de calcul et prendre des décisions éclairées. Que vous choisissiez d'utiliser des SI imbriqués, les fonctions ET et OU, RECHERCHEV, CHOISIR ou IFS, l'important est de choisir la méthode la plus adaptée à votre situation et de suivre les bonnes pratiques pour garantir la clarté et la fiabilité de vos formules. N'hésitez pas à expérimenter et à pratiquer pour maîtriser ces techniques et devenir un expert Excel !