View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
david mcritchie david mcritchie is offline
external usenet poster
 
Posts: 691
Default Increasing cell date by a month

Hi Robert,
I think embedding a worksheet formula within a macro
may be a bit unwieldly, and you would probably just want
to go with the worksheet solution. Here is my solution:

As long as you are in the middle of the month you have
absolutely no problem with what is a month from a date.
But if you want to go from Jan 31, 2004 the last day of the month
what would be one month later would it be Feb 29, 2004 or
would it be 2 days later than that date.

See if this serves your purpose.
=DATE(YEAR(A1),MONTH(A1)+1,DAY(A1))

Since you asked as a programming question the
equivalent follows. Both solutions would provide
March 2, 2004 for the one month from Jan 31, 2004.

[b1] = DATESERIAL(YEAR([a1]),MONTH([a1])+1,DAY([a1]))

changing [a1] and [b1] to variable names would look
more conventional, but this works for testing.
---
HTH,
David McRitchie, Microsoft MVP - Excel [site changed Nov. 2001]
My Excel Pages: http://www.mvps.org/dmcritchie/excel/excel.htm
Search Page: http://www.mvps.org/dmcritchie/excel/search.htm

"Robert Christie" wrote in message ...
Hi
Running the code below on cell C2 containing today's date
of 12-10-2004 changes cell value to 05-10-2004.
Running code a second time changes cell C2 value to 05-09-
2004

Dim dt As Date
dt = [C2].Value
[C2].Value = dt - Day(dt - 5)

How do you alter the code to achieve similar changes, but
increase the dates value?.
i.e. 01-10-2004 to 05-10-2004 run code again to increase
by a month to 05-11-2004.

TIA

Bob C