Fonction IF

Utilisez la fonction IF pour faire un choix en fonction d’une condition. Cela revient à créer une question oui/non pour indiquer exactement à votre feuille quelle valeur renvoyer en fonction de la réponse.

Syntaxe

IF(logical_expression, value_if_true, [value_if_false])
  • logical_expression
    La condition que vous vérifiez. Le résultat doit être TRUE (Vrai) ou FALSE (Faux).
  • value_if_true
    Le résultat que vous souhaitez si votre condition est TRUE. Il peut s’agir de texte, d’un nombre, d’une référence de cellule ou d’une autre formule.
  • value_if_false—[facultatif]
    [facultatif] Le résultat que vous souhaitez si votre condition n’est pas remplie (FALSE). Si vous omettez cet argument, la fonction renvoie une valeur vide.

Exemple d'utilisation

IF([Date d’achèvement]@row ≤ [Date d’échéance]@row, "Tâche terminée dans les délais ou en avance sur le planning", "Tâche terminée en retard")

Notes d'utilisation

  • Pensez à toujours mettre les valeurs textuelles entre guillemets, par exemple "Approuvé" ou "À risque".
  • Vous pouvez imbriquer des fonctions IF pour effectuer plusieurs évaluations logiques.
  • Une formule imbriquée suit un chemin unique dans la formule, suivant un par un les résultats vrai ou faux des expressions logiques. Elle ne regarde pas la formule entière, mais choisit le chemin le plus vrai.
  • Lorsque vous créez des formules imbriquées, vous n’avez pas besoin de vérifier deux fois une même évaluation. Par exemple, si vous recherchez des dates égales ou postérieures à la date du jour, vous n’avez pas besoin de procéder à la même vérification à un autre endroit de la formule. Ainsi, si vous faites =IF(Date@row>=Today(), "Pas en retard", IF(Date@row, le deuxième IF est inutile, car les dates qui ne remplissent pas la condition (et donc ne déclenchent pas la réponse « TRUE ») sont toutes inférieures à la date actuelle, et vous n’avez pas besoin de préciser la deuxième confirmation.

Exemples

Exemple 1 : vérification simple de statut

Vous avez une colonne Statut et vous souhaitez qu’une colonne Alerte signale automatiquement les lignes définies sur À risque.

Statut

Alerte (formule dans cette colonne)

Vert

Dans les délais

Rouge

À risque

Jaune

Dans les délais

 

Formule : =IF(Statut@row = "Rouge", "À risque", "Dans les délais")

Comment ça marche

Lorsque vous utilisez cette formule, vous demandez si la valeur de la colonne Statut de la ligne actuelle est égale à Rouge. Si TRUE, alors le résultat est le texte À risque. Si FALSE, alors le résultat est le texte Dans les délais.

Si vous utilisez des symboles pour le statut ou l’intégrité des tâches, utilisez la liste déroulante pour voir le nom attribué à chaque symbole. Utilisez ce nom comme valeur de symbole pour remplir la formule. Respectez scrupuleusement la casse des noms des valeurs.

Exemple 2 : attribuer des montants variables dans un calcul plus large

Vous devez calculer le nombre total de jours requis pour une tâche. La durée de base se trouve dans une colonne Durée. Vous souhaitez ajouter une marge variable à cette durée, en fonction de l’importance de la tâche :

  • Si la tâche est désignée comme une Tâche critique ? (case cochée), vous devez ajouter une marge de 5 jours supplémentaires.
  • Si la tâche n’est pas critique (case décochée), vous ajoutez une marge standard de 2 jours.

La fonction IF peut renvoyer une valeur spécifique, qui est ensuite utilisée comme composante dans une formule plus grande.

Durée

Tâche critique ?

Nombre total de jours

10

15

7

🔲

9

5

10

 


Formule : =[Durée]@row + IF([Tâche critique ?]@row, 5, 2)


Comment ça marche

Cette formule utilise la fonction IF pour déterminer la marge appropriée, puis l’ajoute à la durée de base de la tâche.

  1. La formule évalue d’abord l’instruction IF : IF([Tâche critique ?]@row, 5, 2).
  2. Marge attribuée :
    • Si la case Tâche critique ? est cochée (TRUE), la fonction IF renvoie la valeur 5.
    • Si la case est décochée (FALSE), la fonction IF renvoie la valeur 2.
  3. Calcul final : le résultat de la fonction IF (5 ou 2) est ensuite ajouté à la valeur de la colonne Durée ([Durée]@row).

La valeur d’un champ de case à cocher est déjà vraie ou fausse, elle peut donc être directement interprétée par la fonction IF sans avoir besoin d’un symbole égal (=) pour indiquer une valeur vraie ou fausse.


Instructions IF imbriquées

Lorsque vous souhaitez que votre feuille vérifie plusieurs conditions à la suite, vous devez utiliser des instructions IF imbriquées.

Il est crucial de bien gérer les parenthèses. Assurez-vous que chaque instruction IF individuelle est correctement fermée pour fonctionner comme prévu.

Une IF imbriquée est simplement une fonction IF placée à l’intérieur du value_if_true, value_if_false (ou les deux) d’une autre fonction IF. Cela vous permet de poser des questions supplémentaires en fonction des réponses aux questions précédentes.

Les formules IF imbriquées peuvent poser différentes questions sur les mêmes données ou poser des questions sur des données entièrement différentes. Elles peuvent être utilisées pour obtenir des valeurs récapitulatives spécifiques et détaillées en fonction de plusieurs questions d’évaluation.

Exemple 1 : chemin « faux » imbriqué pour suivre la santé du projet

Vous souhaitez qu’une cellule affiche un statut spécifique en fonction de la proximité de la date :

  • Rouge : si la date d’échéance de la tâche est dépassée.

  • Jaune : si la tâche est due dans les 7 prochains jours (mais pas encore en retard).

  • Vert : si la tâche est due dans plus de 7 jours.

Formule : =IF([Date d’échéance]@row TODAY(), "Rouge", IF([Date d’échéance]@row = TODAY(7), "Jaune", "Vert"))

Comment ça marche

  1. Premier IF (coche rouge) :
    • Vous demandez : la [Date d’échéance]@row est-elle antérieure à aujourd’hui ?
    • Si TRUE : renvoyer Rouge. (La formule s’arrête ici.)
    • Si FALSE : la date est le jour même ou plus tard. La fonction passe à la deuxième déclaration IF.
  2. Deuxième IF (coche jaune) :
    • Vous demandez : la [Date d’échéance]@row est-elle inférieure ou égale à sept jours à compter d’aujourd’hui ?
    • Si TRUE : renvoyer Jaune. (La formule s’arrête ici.)
    • Si FALSE : la date est dans plus de 7 jours. La fonction renvoie la value_if_false dans cette formule IF : Vert.

Lorsque vous créez une IF imbriquée avec des questions différentes sur les mêmes valeurs, classez les énoncés IF dans un ordre logique, par exemple les nombres du plus petit au plus grand, ou des dates les plus anciennes aux plus récentes, afin d’éviter les impasses dans vos formules.

Exemple 2 : chemin « vrai » imbriqué pour identifier les éléments avec un retard faible ou critique

Vous souhaitez qu’une cellule affiche un statut spécifique en fonction de la proximité de la date :

  • Rouge : si la date d’échéance de la tâche est dépassée depuis 3 jours ou plus.
  • Jaune : si la tâche est en retard de moins de 3 jours.
  • Vert : si la tâche n’est pas encore arrivée à échéance.

Formule : =IF([Date d’échéance]@row TODAY(), IF([Date d’échéance]@row TODAY(-3), "Rouge", "Jaune"), "Vert")

Comment ça marche

  1. Premier IF (coche en retard)
  • Vous demandez : la [Date d’échéance]@row est-elle antérieure à aujourd’hui ?
  • Si TRUE : passer au deuxième IF.
  • Si FALSE : la date est le jour même ou plus tard. La formule renvoie Vert. (La formule s’arrête ici.)
  1. Deuxième IF (coche rouge ou jaune) :
  • Vous demandez : la [Date d’échéance]@row était-elle il y a plus de 3 jours ?
  • Si TRUE : renvoyer Rouge. (La formule s’arrête ici.)
  • Si FALSE : la date d’échéance est en retard de moins de 3 jours. La fonction renvoie Jaune.

Exemple 3 : les deux chemins imbriqués pour appliquer des indicateurs en fonction de la priorité

Nous voulons qu’une cellule affiche un statut spécifique en fonction de la proximité de la date et de l’indicateur de priorité du projet.

Pour les tâches de priorité élevée :

  • Rouge : si la tâche est en retard
  • Jaune : si la tâche est due dans les 5 prochains jours
  • Vert : si la tâche n’est pas bientôt due

Pour les tâches de priorité normale :

  • Rouge : si la tâche est en retard
  • Jaune : si la tâche est due dans les 3 prochains jours
  • Vert : si la tâche n’est pas bientôt due

Formule : =IF([Date d’échéance]@row TODAY(), "Rouge", IF(Priorité@row, IF([Date d’échéance]@row >= TODAY(5), "Jaune", "Vert"), IF([Date d’échéance]@row >= TODAY(3), "Jaune", "Vert")))

Comment ça marche

  1. Premier IF (coche en retard)
  • Vous demandez : la [Date d’échéance]@row est-elle antérieure à aujourd’hui ?
  • Si TRUE : renvoyer Rouge. (La formule s’arrête ici.)
  • Si FALSE : passer au deuxième IF.
  1. Deuxième IF (évaluation de la priorité élevée ou normale) :
  • Vous demandez : la Priorité@row est-elle vraie (priorité élevée) ?
  • Si TRUE : passer au troisième IF.
  • Si FALSE : passer au quatrième IF.
  1. Troisième IF (vérification pour une priorité élevée)
  • Vous demandez : la [Date d’échéance]@row est-elle due dans les 5 prochains jours ?
  • Si TRUE : renvoyer Jaune. (La formule s’arrête ici.)
  • Si FALSE : renvoie Vert. (La formule s’arrête ici.)
  1. Quatrième IF (vérification pour une priorité normale)
  • Vous demandez : la [Date d’échéance]@row est-elle due dans les 3 prochains jours ?
  • Si TRUE : renvoyer Jaune. (La formule s’arrête ici.)
  • Si FALSE : renvoie Vert. (La formule s’arrête ici.)

Besoin d’aide ?

Utilisez le Manuel de formules pour trouver d’autres ressources d’assistance avec plus de 100 formules et un glossaire de chaque fonction que vous pouvez tester en temps réel, ainsi que des exemples de formules courantes et avancées.

Découvrez comment d’autres clients Smartsheet utilisent cette fonction ou posez des questions sur votre cas précis sur la communauté en ligne Smartsheet.

Interroger la communauté