Décaler date - VBA

Bonjour à tous,

J'ai une petite problématique sur laquelle j'aurai besoin d'aide

Date_de_valeur = CDate(Cells(1, 2))
Date_valeur_3mois = DateAdd("m", 3, Date_de_valeur)
Date_valeur_6mois = DateAdd("m", 6, Date_de_valeur)

Je récupère donc une date sur une cellule pour ensuite lui ajouter 3 mois puis 6 mois. La date qui est sur la cellule est toujours le dernier jour du mois.

Mon but est d'avoir pour les 3 mois et 6 mois plus tard le dernier jour du mois également.

Le soucis c'est lorsque la date de la cellule est par exemple le 28/02/2018 (dernier jour de fevrier) , j'obtiens alors

"Date_valeur_3mois" = 28/05/2018

"Date_valeur_6mois" = 28/08/2018

Merci de votre aide

Bonjour,

essaie ainsi :

date_valeur_3mois = WorksheetFunction.EoMonth(DateAdd("m", 3, Date_de_valeur), 0)
date_valeur_6mois = WorksheetFunction.EoMonth(DateAdd("m", 6, Date_de_valeur), 0)

Bonjour,

essaie ainsi :

date_valeur_3mois = WorksheetFunction.EoMonth(DateAdd("m", 3, Date_de_valeur), 0)
date_valeur_6mois = WorksheetFunction.EoMonth(DateAdd("m", 6, Date_de_valeur), 0)

Merci beaucoup Jean-Eric ca fonctionne parfaitement !

Rechercher des sujets similaires à "decaler date vba"