Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Comparer les fonctions Si
A chaque nouvelle mouture d'
Excel,
Microsoft nous offre de
nouvelles fonctions parfois surprenantes et souvent puissantes. Avec les
fonctions Si.Conditions et
Si.Multiple, on ne frôle pas le génie. Certes et nous l'avons déjà évoqué, elles permettent de remplacer l'
imbrication des fonctions Si et d'en simplifier la syntaxe. Mais au-delà , elles ne sont pas douées de prouesses et font office de doublons dans bien des contextes. Cependant et dans ce dernier cas, nous proposons de les comparer pour tirer des conclusions similaires.
Sur l'exemple illustré par la capture, nous travaillons une fois encore à partir du tableau des évaluations. Sur la droite, les barèmes sont dressés dans une grille. En fonction de ces derniers et dans les deux dernières colonnes du tableau, nous faisons tomber la sentence des évaluations en fonction des scores. Les conclusions sont identiques bien entendu. Dans le premier cas, c'est la
fonction Excel Si.Conditions qui statue. Dans le second, c'est la
fonction Si.Multiple qui réagit.
Classeur Excel à télécharger
Pour établir cette comparaison, nous suggérons d'agir à partir du
classeur Excel abritant ce tableau des évaluations.
Nous trouvons le tableau des scores qui s'étend de la
colonne B Ã la
colonne E. Les deux dernières sont vides pour l'instant. Elles attendent les évaluations à dresser avec la
fonction Si.Conditions en
colonne D et avec la
fonction Si.Multiple en
colonne E. Ces évaluations doivent se faire en tenant compte de la grille du barème entre les
colonnes G et
H.
Analyse multicritère
La
fonction Excel Si.Conditions permet d'énumérer des critères, d'inégalité ici, et d'énoncer en regard les actions à entreprendre, dès lors que l'un d'entre eux est vérifié. Comme nous allons bâtir une formule destinée à être répliquée sur les lignes du dessous, tous les critères doivent être construits sur la base du
premier score en
cellule C4. Littéralement, nous allons transcrire ceci : Si le score est inférieur à 40 alors nous appliquons l'évaluation F, sinon s'il est inférieur à 60, nous appliquons l'évaluation E sinon s'il est inférieur à 70, nous appliquons l'évaluation D et ainsi de suite jusqu'à la dernière valeur de la grille.
- Sélectionner la première évaluation à fournir en cliquant sur la cellule D4,
- Taper le symbole égal (=) pour débuter la syntaxe de la formule,
- Inscrire la fonction de conditions multiples, suivie d'une parenthèse, soit : Si.Conditions(,
Nous sommes ainsi placés dans l'argument du premier critère à construire. Nous l'avons dit, il est question de comparer le premier score avec la première valeur de la grille.
- Désigner le premier score par ses coordonnées, soit : C4,
- Taper le symbole inférieur suivi du symbole égal, soit : <=,
- Puis, désigner la première cellule du barème en cliquant sur sa cellule G4,
- Dès lors, enfoncer la touche F4 du clavier pour la figer, ce qui donne : $G$4,
Nous allons répliquer cette
analyse multicritère sur les lignes du dessous pour étudier tous les scores les uns après les autres. Mais dans cette construction et malgré le déplacement, chaque score doit commencer sa confrontation avec cette première valeur immuablement placée en
cellule G4. Elle ne doit donc pas suivre le mouvement de la formule répliquée.
- Taper un point-virgule (;) pour passer dans l'argument de l'action correspondante,
Si ce premier critère est vérifié, cela signifie que le score est très bas. Donc, c'est la première évaluation qui doit lui être attribuée. Il faut comprendre, dans l'enchaînement des conditions que nous allons empiler, que la
fonction Si.Conditions ne poursuit plus son analyse dès qu'un critère est honoré. Elle ignore les suivants.
- Désigner la première évaluation en cliquant sur la cellule H4,
- Comme précédemment, enfoncer la touche F4 pour la figer, ce qui donne : $H$4,
- Taper un nouveau point-virgule (;) pour poursuivre l'énumération des critères,
La suite de la construction doit suivre le même schéma. Elle consiste en une énumération de
binômes critère-action, jusqu'au dernier palier du barème. Il nous en reste 5 à confronter avec le score pour déceler la tranche dans laquelle il se situe.
- A la suite de la syntaxe, construire toutes les correspondances possibles, comme suit :
C4<=$G$5; $H$5; C4<=$G$6; $H$6; C4<=$G$7; $H$7; C4<=$G$8; $H$8; C4<=$G$9; $H$9
La porte de sortie
A ce stade, tous les cas listés par la grille ont été envisagés. Mais dans l'absolue, des surprises peuvent surgir, comme nous l'avons constaté dans un volet précédent. Un candidat peut très bien avoir obtenu un score qui n'entre dans aucune tranche, par exemple avec une note de 102. Dans ces conditions, nous devons envisager une porte de sortie pour ne pas générer d'erreur. Et comme nous l'avons appris, l'astuce consiste à bâtir un critère qui sera forcément vérifié quand tous les autres auront échoué.
- Taper un point-virgule (;) pour passer dans l'argument du critère suivant,
- Puis, inscrire le booléen Vrai,
De cette manière, il ne demande rien à personne. Il s'auto-valide.
- Taper un point-virgule (;) pour passer dans l'argument de l'action correspondante,
- Désigner la meilleure évaluation en cliquant sur la cellule H9,
- Puis, figer cette dernière en enfonçant la touche F4 du clavier, soit : $H$9,
En cas de performance exceptionnelle, nous choisissons simplement de rabattre l'évaluation sur la meilleure d'entre elles.
- Fermer la parenthèse de la fonction Si.Conditions,
- Valider la formule par le raccourci clavier CTRL + Entrée,
- Puis, double cliquer sur la poignée du résultat pour répandre la logique sur tout le tableau,
Comme vous pouvez l'apprécier, toutes les évaluations tombent, en parfaite cohérence avec les règles imposées. Mais la syntaxe que nous avons construite est lourde :
=SI.CONDITIONS(C4<=$G$4; $H$4; C4<=$G$5; $H$5; C4<=$G$6; $H$6; C4<=$G$7; $H$7; C4<=$G$8; $H$8; C4<=$G$9; $H$9; VRAI; $H$9)
De plus, elle continuerait de s'alourdir si de nouveaux cas devaient être envisagés.
Selon le cas
Avec la
fonction Si.Multiple, l'approche est un peu différente. Telle que nous l'avons présentée dans le volet précédent, elle permet d'évaluer le contenu d'une cellule par rapport à une liste de valeurs. Mais nous pouvons dériver son utilisation en lui passant le
booléen Vrai, en premier paramètre, en guise de donnée à évaluer. C'est ce repérage qui permettra de déclencher le critère répondant favorablement. Pour cela, nous devons les énumérer et en regard, nous devons pointer sur les évaluations correspondantes.
- Cliquer sur la cellule E4 pour la sélectionner,
- Taper le symbole égal (=) pour amorcer la construction de la formule,
- Inscrire la fonction aux multiples cas, suivie d'une parenthèse, soit : Si.Multiple(,
- Inscrire le booléen Vrai,
- Taper un point-virgule (;) pour passer dans l'argument du premier critère à construire,
- Désigner le premier score à évaluer en cliquant sur sa cellule C4,
- Taper le symbole égal suivi du symbole inférieur : <=, pour l'inégalité à honorer,
- Désigner alors le premier palier du barème en cliquant sur sa cellule G4,
- Puis, figer cette dernière à l'aide de la touche F4 du clavier, ce qui donne : $G$4,
- Taper un point-virgule (;) pour atteindre l'argument de la valeur concordante à retourner,
- Désigner la première évaluation en cliquant sur sa cellule H4,
- Figer cette dernière à l'aide de la touche F4 du clavier, soit : $H$4,
- Puis, taper un point-virgule (;) pour poursuivre l'énumération des binômes,
- Construire les cinq binômes critère-retour restants, comme suit :
C4<=$G$5; $H$5; C4<=$G$6; $H$6; C4<=$G$7; $H$7; C4<=$G$8; $H$8; C4<=$G$9; $H$9
Ainsi, nous confrontons le score à chaque palier de la grille du barème pour envisager chaque évaluation possible.
Il nous reste à dégainer l'issue de secours lorsque le score ne répond à aucun de ces critères, par exemple lorsqu'il dépasse la barre des 100. Pour cela, il suffit de renseigner l'argument suivant sans son binôme. Avec cette forme remarquable, la
fonction Si.Multiple comprend qu'il ne s'agit pas d'un critère mais d'une valeur à inscrire quand toutes les conditions précédentes ont échoué.
- Taper un point-virgule (;) pour désigner de nouveau la cellule H9,
- Figer cette dernière avec la touche F4 du clavier : $H$9,
- Fermer la parenthèse de la fonction Si.Multiple,
- Valider la formule par le raccourci clavier CTRL + Entrée,
- Puis, double cliquer sur la poignée du résultat pour répandre la logique de la formule,
Comme vous pouvez le voir, nous obtenons exactement les mêmes conclusions qu'avec la
fonction Si.Conditions.
Remarque : Dans les deux constructions, le dernier cas que nous avons envisagé agit comme un
Sinon. Et comme nous rabattons l'évaluation sur la précédente, le dernier binôme peut être supprimé dans les deux contextes :
=SI.CONDITIONS(C4<=$G$4; $H$4; C4<=$G$5; $H$5; C4<=$G$6; $H$6; C4<=$G$7; $H$7; C4<=$G$8; $H$8; VRAI; $H$9)
=SI.MULTIPLE(VRAI; C4<=$G$4; $H$4; C4<=$G$5; $H$5; C4<=$G$6; $H$6; C4<=$G$7; $H$7; C4<=$G$8; $H$8; $H$9)
Malgré tout, les syntaxes restent très lourdes et les formules ne sont pas capables de s'adapter à de nouveaux cas. Nous ne pouvons pas dire que l'une soit plus simple ou souple que l'autre. Comme nous l'avons évoqué dans un cas précédent, dans ce contexte d'évaluations par tranches, il est préférable d'exercer une
recherche approchante avec la
fonction RechercheV ou encore avec la
fonction RechercheX. Dans certains cas particuliers, ces fonctions peuvent néanmoins avoir de l'intérêt. C'est ce que nous entendons démontrer à l'occasion de la prochaine astuce.