How do I obtain the end of month dates for a time interval?

2 views (last 30 days)
if i have two dates that constitute a time interval such as : 726864 and 734169 is it possible to compute the end of month dates for the whole time interval?

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 3 Jul 2011
d = [726864,734169]
dv = datevec(d(1):d(2));
d2 = unique(dv(:,1:2),'rows');
dm = eomday(d2(:,1), d2(:,2))

More Answers (1)

the cyclist
the cyclist on 3 Jul 2011
I think the Financial Toolbox has functions that make things like this easier. Also, have you looked at the File Exchange?
Absent that toolbox, one way to do this would be to extract the year/month of your two dates using the datevec() command, which should make it easy to find all the interim months. Then make a vector with year-month-date of the first of each month, which is easier than finding the last date of each month (which can be 28,29,30, or 31!). Then, subtract a day to get the last datenum of the previous month.

Categories

Find more on Dates and Time in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!