[RESOLVED] Add months to a date field
Hello all,
Is there an easy way to add months to a date field?
Example:
This code adds 15 days to begin_date.
----------------------
dim Begin_Date, End_Date as Date
Begin_Date = Date
End_Date = Begin_Date + 15
---------------------
What I want is to add months or years to begin_date in a simple way...
Is that possible?? :confused:
Re: Add months to a date field
VB Code:
'DateAdd(IntervalType, Number, FirstDate)
End_date = DateAdd("d", 15, Begin_Date)
Edit:
Should really read peoples post.
replace "d" with "m" for months or "yyyy" for years
Re: Add months to a date field
Just use dateAdd function:
VB Code:
Private Sub Command1_Click()
Dim Begin_Date As Date, End_Date As Date
Begin_Date = Date
'add 15 days
End_Date = DateAdd("d", 15, Begin_Date)
Debug.Print End_Date
'add 1 month
End_Date = DateAdd("m", 1, Begin_Date)
Debug.Print End_Date
'add 1 year
End_Date = DateAdd("yyyy", 1, Begin_Date)
Debug.Print End_Date
End Sub
Re: Add months to a date field
OK, Thanks a lot,
Does VB have a similiar function to deal with time as well?
Re: Add months to a date field
yeah, it's the same function, just define the interval accordingly
s = seconds
n = minutes
h = hours
Re: Add months to a date field
As usual selecting keywork and hitting F1 brings up VB's Help files. ;)
If you have it installed and you do that then you would see the following:
Quote:
DateAdd Function
Returns a Variant (Date) containing a date to which a specified time interval has been added.
Syntax
DateAdd(interval, number, date)
The DateAdd function syntax has thesenamed arguments:
Part Description
interval Required.String expression that is the interval of time you want to add.
number Required.Numeric expression that is the number of intervals you want to add. It can be positive (to get dates in the future) or negative (to get dates in the past).
date Required. Variant (Date) or literal representing date to which the interval is added.
Settings
The intervalargument has these settings:
Setting Description
yyyy Year
q Quarter
m Month
y Day of year
d Day
w Weekday
ww Week
h Hour
n Minute
s Second
Remarks
You can use the DateAdd function to add or subtract a specified time interval from a date. For example, you can use DateAdd to calculate a date 30 days from today or a time 45 minutes from now.
To add days to date, you can use Day of Year ("y"), Day ("d"), or Weekday ("w").
The DateAdd function won't return an invalid date. The following example adds one month to January 31:
DateAdd("m", 1, "31-Jan-95")
In this case, DateAdd returns 28-Feb-95, not 31-Feb-95. If date is 31-Jan-96, it returns 29-Feb-96 because 1996 is a leap year.
If the calculated date would precede the year 100 (that is, you subtract more years than are in date), an error occurs.
If number isn't aLong value, it is rounded to the nearest whole number before being evaluated.
Note The format of the return value for DateAdd is determined by Control Panel settings, not by the format that is passed in date argument.
Re: Add months to a date field
Rhinno,
at the moment I'm not in a pc with VB instaled... I was just curious...
:)
Anyway, Thanks !
Re: [RESOLVED] Add months to a date field