EOMONTH (FIN.MOIS dans un Google Sheets en français) renvoie le dernier jour du mois, un nombre donné de mois avant ou après une date de départ. Elle vous évite de chercher si un mois compte 28, 29, 30 ou 31 jours, et c'est la base des rapports de fin de mois, des cycles de facturation, des échéances et des listes de dates mensuelles.
Syntaxe
=EOMONTH(start_date, months)
start_date: La date de référence.months: De combien de mois se décaler.0est le même mois,1le mois suivant,-1le mois précédent.
Le résultat est un numéro de série de date : mettez donc la cellule au format date (Format > Nombre > Date).
Exemples de base
Avec A2 contenant le 10 mars 2026 :
=EOMONTH(A2, 0)
Renvoie le 31 mars 2026 : la fin du même mois.
=EOMONTH(A2, 1)
Renvoie le 30 avril 2026.
=EOMONTH(A2, -1)
Renvoie le 28 février 2026.
=EOMONTH(DATE(2028, 1, 15), 1)
Renvoie le 29 février 2028. Les années bissextiles sont gérées automatiquement.
Premier jour du mois
Il n'existe pas de fonction « début de mois », mais ajouter un jour à la fin du mois précédent fonctionne :
=EOMONTH(A2, -1) + 1
Renvoie le 1er mars 2026 pour l'exemple ci-dessus. Ce couple premier/dernier jour est la base des rapports mensuels.
Formules pratiques
Nombre de jours dans un mois
=DAY(EOMONTH(A2, 0))
Renvoie 31 pour mars.
Jours restant dans le mois
=EOMONTH(TODAY(), 0) - TODAY()
Une date est-elle dans le mois en cours ?
=AND(A2 >= EOMONTH(TODAY(), -1) + 1, A2 <= EOMONTH(TODAY(), 0))
Totaux d'un mois donné
Avec une date quelconque du mois en F1 :
=SUMIFS(C2:C1000, A2:A1000, ">=" & (EOMONTH(F1, -1) + 1), A2:A1000, "<=" & EOMONTH(F1, 0))
Additionne les montants datés de ce mois.
Échéances de fin de mois
=EOMONTH(A2, 1)
Une facture datée de mars est due à la fin d'avril.
Une liste de fins de mois
=ARRAYFORMULA(EOMONTH(DATE(2026, 1, 1), SEQUENCE(12, 1, 0, 1)))
Renvoie les 12 dates de fin de mois de 2026. Pour les débuts de mois, ajoutez 1 à EOMONTH(..., SEQUENCE(12, 1, -1, 1)).
Fin de trimestre
=EOMONTH(A2, MOD(3 - MONTH(A2), 3))
Avance jusqu'au dernier mois du trimestre, puis jusqu'à sa fin. Pour le 10 mars, la formule renvoie le 31 mars, et pour le 5 mai, le 30 juin.
Fin d'exercice fiscal
=EOMONTH(DATE(YEAR(A2) + (MONTH(A2) > 6), 6, 1), 0)
Une fin d'exercice au 30 juin : les dates de juillet et suivantes passent à l'année suivante. Adaptez les numéros de mois à votre calendrier fiscal.
Regrouper par mois
=EOMONTH(A2, 0)
Convertit n'importe quelle date en sa fin de mois, ce qui donne une clé de regroupement propre pour QUERY, SUMIF ou un tableau croisé dynamique.
Ajouter des mois sans débordement
EDATE(A2, 1) garde le même numéro de jour, et EOMONTH tombe toujours sur le dernier jour. Pour la règle « même jour le mois suivant, ou le dernier jour s'il n'existe pas », EDATE ajuste déjà (31 janvier plus un mois donne le 28 ou 29 février).
Erreurs courantes
- Un nombre comme
46112au lieu d'une date. Mettez la cellule au format date. #VALUE!.start_dateest du texte. Convertissez-le avecDATEVALUE, ou utilisezDATE(année, mois, jour).#NUM!. La date est hors limites oumonthsn'est pas un nombre.- Décalage d'un jour avec l'astuce du « premier du mois ». Rappelez-vous que c'est
EOMONTH(date, -1) + 1, et nonEOMONTH(date, 0) + 1, qui donne le premier du mois suivant. - Mois fractionnaires.
monthsest tronqué à un nombre entier.
EOMONTH, EDATE ou DATE ?
EOMONTHrenvoie le dernier jour d'un mois.EDATErenvoie le même numéro de jour, à N mois d'écart.DATE(année, mois + 1, 0)renvoie aussi le dernier jour d'un mois, maisEOMONTHest plus claire.
Questions fréquentes
EOMONTH gère-t-elle les années bissextiles ? Oui. Elle renvoie le 29 février les années bissextiles.
Comment obtenir le premier jour du mois ? =EOMONTH(A2, -1) + 1.
EOMONTH peut-elle travailler sur une colonne ? Oui : =ARRAYFORMULA(EOMONTH(A2:A, 0)), avec IF pour ignorer les cellules vides.
Que renvoie EOMONTH(A2, 0) si A2 est déjà le dernier jour ? La même date.
Fonctions associées
EDATE: Renvoie une date à un nombre de mois donné.TODAY: Renvoie la date du jour.DATEDIF: Calcule la différence entre deux dates.NETWORKDAYS: Compte les jours ouvrés entre deux dates.SEQUENCE: Génère une suite de nombres.