Formule Excel: obtenir le dernier jour de la semaine du mois -

Table des matières

Formule générique

=EOMONTH(date,0)+1-WEEKDAY(EOMONTH(date,0)+1-dow)

Sommaire

Pour obtenir le dernier jour de la semaine d'un mois (c'est-à-dire le dernier samedi, le dernier vendredi, le dernier lundi, etc.), vous pouvez utiliser une formule basée sur les fonctions EOMONTH et WEEKDAY.

Dans l'exemple illustré, la formule en D5 est:

=EOMONTH(B5,0)+1-WEEKDAY(EOMONTH(B5,0)+1-C5)

Explication

Premièrement, cette formule détermine le premier jour du mois suivant * après * une date donnée. Il le fait en utilisant EOMONTH pour obtenir le dernier jour du mois, puis en ajoutant un jour:

=EOMONTH(B5,0)+1

Ensuite, la formule calcule le nombre de jours nécessaires pour «revenir» au dernier jour de la semaine demandé dans le mois précédent (c'est-à-dire le mois de la date d'origine):

WEEKDAY(EOMONTH(B5,0)+1-C5)

À l'intérieur de WEEKDAY, EOMONTH est à nouveau utilisé pour obtenir le premier jour du mois suivant. À partir de cette date, la valeur du jour de la semaine est soustraite et le résultat est introduit dans WEEKDAY, qui renvoie le nombre de jours à restaurer.

Enfin, les jours de restauration sont soustraits du premier jour du mois suivant, ce qui donne le résultat final.

Autres jours de la semaine

Dans la forme générale de la formule en haut de la page, le jour de la semaine est abrégé "dow". Il s'agit d'un nombre compris entre 1 (dimanche) et 7 (samedi) qui peut être modifié pour obtenir un jour de la semaine différent. Par exemple, pour obtenir le dernier jeudi d'un mois, définissez dow sur 5.

Remarque: je suis tombé sur cette formule dans une réponse sur le forum MrExcel par Barry Houdini.

Bons liens

Réponse de Barry Houdini sur le forum MrExcel

Articles intéressants...