Calculer la différence entre deux dates sur Excel : Méthodes et Astuces
Excel offre plusieurs façons de calculer la différence entre deux dates, chacune adaptée à un besoin spécifique. Nous explorerons ici les méthodes les plus courantes et les plus efficaces.
Méthode simple : Soustraction directe
La méthode la plus simple consiste à soustraire directement une date d'une autre. Excel stocke les dates sous forme de nombres séquentiels, où chaque nombre représente un jour. Par conséquent, la soustraction directe donne le nombre de jours entre les deux dates.
Exemple :
Supposons que la date de début soit en cellule A1 (par exemple, 01/01/2023) et la date de fin en cellule B1 (par exemple, 31/01/2023).
La formule =B1-A1 renverra 30, qui représente le nombre de jours entre le 1er janvier 2023 et le 31 janvier 2023.
Important :
- Assurez-vous que les cellules contenant les dates sont formatées comme des dates (Format > Cellules > Date).
- Le résultat sera un nombre. Vous pouvez ensuite formater cette cellule pour afficher le nombre de jours avec un texte descriptif (par exemple, "jours").
Utilisation de la fonction JOURS
La fonction JOURS (ou DAYS en anglais) est une fonction dédiée au calcul de la différence entre deux dates. Elle prend deux arguments : la date de fin et la date de début.
Syntaxe : =JOURS(date_fin; date_début)
Exemple :
=JOURS("2023-01-31"; "2023-01-01") renverra 30.
=JOURS(B1; A1) (si B1 contient la date de fin et A1 la date de début) renverra également 30.
Avantage :
Cette fonction est plus explicite et facilite la compréhension de la formule.
Calculer la différence en années, mois et jours avec la fonction DATEDIF
La fonction DATEDIF est une fonction plus ancienne d'Excel, qui n'est pas toujours documentée, mais reste très utile pour calculer la différence entre deux dates en années, mois ou jours.
Syntaxe : =DATEDIF(date_début; date_fin; intervalle)
L'argument intervalle spécifie l'unité de temps souhaitée :
"Y": Différence en années complètes."M": Différence en mois complets."D": Différence en jours."YM": Nombre de mois restants après avoir soustrait les années complètes."YD": Nombre de jours restants après avoir soustrait les années complètes."MD": Nombre de jours restants après avoir soustrait les mois complets.
Exemples :
Supposons que A1 contient la date de début (01/01/1990) et B1 la date de fin (31/01/2023).
=DATEDIF(A1; B1; "Y")renverra33(nombre d'années complètes).=DATEDIF(A1; B1; "M")renverra396(nombre de mois complets).=DATEDIF(A1; B1; "D")renverra12070(nombre de jours).=DATEDIF(A1; B1; "YM")renverra0(nombre de mois restants après avoir soustrait les 33 années).=DATEDIF(A1; B1; "YD")renverra30(nombre de jours restants après avoir soustrait les 33 années).=DATEDIF(A1; B1; "MD")renverra30(nombre de jours restants après avoir soustrait les 396 mois).
Remarques importantes sur DATEDIF :
DATEDIFpeut être sensible à l'ordre des dates. Assurez-vous que la date de début est antérieure à la date de fin.- La fonction n'est pas disponible dans la liste des fonctions d'Excel, vous devez la taper manuellement.
Calculer le nombre de jours ouvrés avec la fonction NB.JOURS.OUVRES
Si vous souhaitez calculer le nombre de jours ouvrés (jours sans week-end ni jours fériés) entre deux dates, vous pouvez utiliser la fonction NB.JOURS.OUVRES (ou NETWORKDAYS en anglais).
Syntaxe : =NB.JOURS.OUVRES(date_début; date_fin; [jours_fériés])
date_début: La date de début.date_fin: La date de fin.[jours_fériés](facultatif) : Une plage de cellules contenant les dates des jours fériés à exclure du calcul.
Exemple :
Supposons que A1 contient la date de début (01/01/2023), B1 la date de fin (31/01/2023) et C1:C5 contient les dates des jours fériés (par exemple, 02/01/2023, 09/01/2023).
=NB.JOURS.OUVRES(A1; B1; C1:C5) renverra le nombre de jours ouvrés entre le 1er janvier 2023 et le 31 janvier 2023, en excluant les week-ends et les jours fériés spécifiés dans la plage C1:C5.
Si vous n'avez pas de jours fériés à exclure, vous pouvez simplement utiliser =NB.JOURS.OUVRES(A1; B1). Cela calculera le nombre de jours ouvrés en excluant uniquement les week-ends.
Calculer le nombre de jours ouvrés internationaux avec NB.JOURS.OUVRES.INTERNATIONAL
Pour une flexibilité accrue, Excel propose la fonction NB.JOURS.OUVRES.INTERNATIONAL. Cette fonction permet de spécifier quels jours sont considérés comme week-end (par exemple, uniquement le dimanche, ou le vendredi et le samedi, etc.).
Syntaxe : =NB.JOURS.OUVRES.INTERNATIONAL(date_début; date_fin; [week-end]; [jours_fériés])
date_début: La date de début.date_fin: La date de fin.[week-end](facultatif) : Un nombre ou une chaîne de caractères indiquant les jours du week-end. Par exemple,1indique samedi et dimanche (par défaut),11indique uniquement le dimanche,17indique le vendredi et le samedi. Consultez l'aide d'Excel pour la liste complète des codes.[jours_fériés](facultatif) : Une plage de cellules contenant les dates des jours fériés à exclure du calcul.
Exemple :
=NB.JOURS.OUVRES.INTERNATIONAL(A1; B1; 11; C1:C5) calculera le nombre de jours ouvrés entre A1 et B1, en considérant uniquement le dimanche comme week-end et en excluant les jours fériés listés dans C1:C5.
Gérer les erreurs et les dates invalides
Il est important de gérer les erreurs potentielles lors du calcul de la différence entre les dates. Par exemple, si une cellule censée contenir une date contient du texte, la formule renverra une erreur.
Vous pouvez utiliser la fonction ESTERREUR ou ESTNUM pour vérifier si une cellule contient une date valide avant d'effectuer le calcul.
Exemple :
=SI(ESTERREUR(A1); "Date invalide"; A1) affichera "Date invalide" si la cellule A1 contient une erreur, sinon elle affichera la valeur de A1.
Pour vérifier si une cellule contient un nombre (et donc potentiellement une date valide), vous pouvez utiliser ESTNUM.
=SI(ESTNUM(A1); A1; "Date invalide")
Bonnes pratiques et astuces
- Utiliser des noms de plages : Au lieu d'utiliser des références de cellules directes (par exemple, A1:A5), vous pouvez définir des noms de plages (par exemple, "JoursFeries"). Cela rend vos formules plus lisibles et plus faciles à maintenir.
- Vérifier le format des cellules : Assurez-vous que les cellules contenant les dates sont correctement formatées comme des dates. Excel peut parfois interpréter incorrectement les dates si le format est incorrect.
- Utiliser des commentaires : Ajoutez des commentaires à vos formules pour expliquer ce qu'elles font. Cela facilitera la compréhension de vos feuilles de calcul pour vous-même et pour les autres.
- Tester vos formules : Vérifiez toujours vos formules avec des exemples de données pour vous assurer qu'elles fonctionnent correctement.
- Utiliser la fonction AUJOURDHUI() : Pour calculer la différence entre une date et la date actuelle, utilisez la fonction
AUJOURDHUI()qui renvoie la date du jour.
Exemple :
=JOURS(AUJOURDHUI(); A1) calculera le nombre de jours entre la date en A1 et la date d'aujourd'hui.
Conclusion
Calculer la différence entre deux dates sur Excel est une compétence essentielle pour la gestion de données temporelles. En utilisant les formules et les techniques présentées dans ce guide, vous serez en mesure de maîtriser ces calculs et d'optimiser vos feuilles de calcul. N'oubliez pas de vérifier le format des cellules, de gérer les erreurs potentielles et d'utiliser les bonnes pratiques pour garantir la précision et la fiabilité de vos résultats.