Avec des si...

Sauter Menu de l'activité

Des traitements sur mesure

MentionMention dépendant du résultat

Dans un tableau, il arrive que certaines informations dépendent d'une condition liée aux valeurs prises par d'autres informations.

Juste un exemple, si j'obtiens plus de 60% des points au bulletin, la mention indiquée est « RÉUSSI », sinon, cette mention est « AJOURNÉ ».

Nous pouvons évidemment remplir la troisième colonne en observant les informations de la deuxième. Mais ce serait plus intelligent de demander au tableur de gérer lui-même cette liaison, car il s'agit d'un traitement purement formel. Il existe une fonction qui le lui permet. Nous l'appellerons la fonction si.

La fonction si utilise minimum deux et, le plus souvent, trois arguments :

  • le premier mentionne la condition à vérifier ;
  • le deuxième indique quelle doit être l'information à prendre en compte si la condition est vérifiée ;
  • le troisième indique l'information à prendre en compte si la condition n'est pas vérifiée.
SyntaxeLa fonction si et ses trois arguments

Seulement voilà, les arguments d'une fonction sont des informations d'un des quatre types. Alors de quel type peut bien être une condition ?

Pour rappel, quels sont les types d'informations prises en compte par le tableur ?

Les types habituels sont :

  • nombre ;
  • texte ;
  • date/heure ;
  • booléen.

C'est donc le moment de ressortir le type booléen dont on a dit si peu de choses. Pour rappel, un booléen est une information ne pouvant prendre que les valeurs VRAI et FAUX et c'est exactement le cas de notre condition.

La fonction si utilise deux arguments supplémentaires.


Que représentent-ils, selon vous ?

Ils représentent respectivement :

  • l'information qui doit être prise en compte si la valeur de la condition est VRAI,
  • l'information qui doit être prise en compte si la valeur de la condition est FAUX.

Ces informations peuvent être de n'importe quel type.

Tout cela ne nous dit pas comment transformer la condition en une valeur booléenne.


Avez-vous une idée de la manière dont on peut créer des valeurs booléennes ?

C'est simple, on utilise des opérateurs de comparaison. Les comparaisons que l'on peut faire génèrent des résultats qui ont la valeur VRAI ou la valeur FAUX. Voici quelques exemples :

  • A2>20
    Traduisez « le contenu de la cellule est supérieur à 20 ». La réponse (VRAI ou FAUX) dépendra évidemment du contenu de A2. C'est pour cela qu'on peut qualifier une cellule de variable.
  • B4="Paris"
    Traduisez « le contenu de la cellule est la chaine de caractère Paris ».
  • aujourdhui()>1/1/2012
    Traduisez « nous sommes au-delà du 1er janvier 2012 ». À nouveau, une telle affirmation ne peut avoir que deux valeurs.
  • et(A3="N";B3="O")
    Traduisez « le contenu de la cellule A3 est le caractère N et celui de B3 est le caractère O ».

Une valeur booléenne n'est pratiquement jamais utilisée comme telle, mais est le résultat de l'évaluation d'un expression qui, comme celles des exemples, peut se composer de :

  • variables,
  • opérateurs,
  • fonctions,
  • constantes.

Dans les exemples, 20 est une constante de type nombre alors que "Paris" est une constante de type texte et 1/1/2012 une constante de type date/heure.

Les constantes de type texte doivent être encadrées par des guillemets.

Il y a pour cela une raison que nous ne pouvons encore justifier à ce stade, mais ça viendra. Venons-en à notre problème de mention.