By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
429,365 Members | 3,180 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 429,365 IT Pros & Developers. It's quick & easy.

Date Interval Functions

P: n/a
On a form I have

Date_Start Date_End

I have a new
Date_Start1 Date_End1 which the use
inputs.

I need to validate that Date_Start1 and Date_End1 are a date range
entirely separate from Date_Start and Date_End i.e. no overlapping
whatsoever. In effect checking a date interval.

Are there any functions out there already written that can do this? It
seems to basic to start comparing and contracting dates! Would like to
do it in Javascript, but happy in vbscript also.

Thanks,
Lynn
Jul 19 '05 #1
Share this Question
Share on Google+
4 Replies


P: n/a
Lynn wrote:
On a form I have

Date_Start Date_End

I have a new
Date_Start1 Date_End1 which the use
inputs.

I need to validate that Date_Start1 and Date_End1 are a date range
entirely separate from Date_Start and Date_End i.e. no overlapping
whatsoever. In effect checking a date interval.

Are there any functions out there already written that can do this? It
seems to basic to start comparing and contracting dates! Would like to
do it in Javascript, but happy in vbscript also.

There's nothing builtin, if that's what you are asking. In my 10+ yrs of
development work, I have never had this requirement, so I can understand why
they did not bother creating a builtin function to do this (I'm taliking
about vbscript, with which I am more familiar than with jscript).

Do you have any control over the dates being input? Is the goal that the
second date range will be the later one? That would be simplest: just make
sure that Date_Start1 is greater than Date_End, and Date_End1 is greater
than Date_Start1.

Or do we have to check both cases? If so, I would see which was greater:
Date_Start or DateStart, and pass the dates to a function in the proper
order. I'm not going to write it for you because I don't even know if you
need it, Get back to us if you have any issues.

HTH,
Bob Barrows
--
Microsoft MVP - ASP/ASP.NET
Please reply to the newsgroup. This email account is my spam trap so I
don't check it very often. If you must reply off-line, then remove the
"NO SPAM"
Jul 19 '05 #2

P: n/a
hi, this may help you:
Microsoft® Visual Basic® Scripting Edition
DateDiff Function Language Reference
Version 2
See Also
----------------------------------------------------------------------------
----

Description
Returns the number of intervals between two dates.
Syntax
DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]])
The DateDiff function syntax has these parts:

Part Description
interval Required. String expression that is the interval you want
to use to calculate the differences between date1 and date2. See Settings
section for values.
date1, date2 Required. Date expressions. Two dates you want to use
in the calculation.
firstdayofweek Optional. Constant that specifies the day of the
week. If not specified, Sunday is assumed. See Settings section for values.
firstweekofyear Optional. Constant that specifies the first week of
the year. If not specified, the first week is assumed to be the week in
which January 1 occurs. See Settings section for values.

Settings
The interval argument can have the following values:
Setting Description
yyyy Year
q Quarter
m Month
y Day of year
d Day
w Weekday
ww Week of year
h Hour
n Minute
s Second
The firstdayofweek argument can have the following values:

Constant Value Description
vbUseSystem 0 Use National Language Support (NLS) API setting.
vbSunday 1 Sunday (default)
vbMonday 2 Monday
vbTuesday 3 Tuesday
vbWednesday 4 Wednesday
vbThursday 5 Thursday
vbFriday 6 Friday
vbSaturday 7 Saturday
The firstweekofyear argument can have the following values:

Constant Value Description
vbUseSystem 0 Use National Language Support (NLS) API setting.
vbFirstJan1 1 Start with the week in which January 1 occurs
(default).
vbFirstFourDays 2 Start with the week that has at least four days in
the new year.
vbFirstFullWeek 3 Start with the first full weekof the new year.
Remarks
You can use the DateDiff function to determine how many specified time
intervals exist between two dates. For example, you might use DateDiff to
calculate the number of days between two dates, or the number of weeks
between today and the end of the year.
To calculate the number of days between date1 and date2, you can use
either Day of year ("y") or Day ("d"). When interval is Weekday ("w"),
DateDiff returns the number of weeks between the two dates. If date1 falls
on a Monday, DateDiff counts the number of Mondays until date2. It counts
date2 but not date1. If interval is Week ("ww"), however, the DateDiff
function returns the number of calendar weeks between the two dates. It
counts the number of Sundays between date1 and date2. DateDiff counts date2
if it falls on a Sunday; but it doesn't count date1, even if it does fall on
a Sunday.

If date1 refers to a later point in time than date2, the DateDiff function
returns a negative number.

The firstdayofweek argument affects calculations that use the "w" and "ww"
interval symbols.

If date1 or date2 is a date literal, the specified year becomes a
permanent part of that date. However, if date1 or date2 is enclosed in
quotation marks (" ") and you omit the year, the current year is inserted in
your code each time the date1 or date2 expression is evaluated. This makes
it possible to write code that can be used in different years.

When comparing December 31 to January 1 of the immediately succeeding
year, DateDiff for Year ("yyyy") returns 1 even though only a day has
elapsed.

The following example uses the DateDiff function to display the number of
days between a given date and today:

Function DiffADate(theDate)
DiffADate = "Days from today: " & DateDiff("d", Now, theDate)
End Function

----------------------------------------------------------------------------
----

bye,
--

««««««««»»»»»»»»»»»»»»
Vlmar Brazăo de Oliveira
Desenvolvimento Web
HI-TEC
"Lynn" <ru******************@hotmail.com> escreveu na mensagem
news:1d**************************@posting.google.c om...
On a form I have

Date_Start Date_End

I have a new
Date_Start1 Date_End1 which the use
inputs.

I need to validate that Date_Start1 and Date_End1 are a date range
entirely separate from Date_Start and Date_End i.e. no overlapping
whatsoever. In effect checking a date interval.

Are there any functions out there already written that can do this? It
seems to basic to start comparing and contracting dates! Would like to
do it in Javascript, but happy in vbscript also.

Thanks,
Lynn

Jul 19 '05 #3

P: n/a
"Lynn" <ru******************@hotmail.com> wrote in message
news:1d**************************@posting.google.c om...
On a form I have

Date_Start Date_End

I have a new
Date_Start1 Date_End1 which the use
inputs.

I need to validate that Date_Start1 and Date_End1 are a date range
entirely separate from Date_Start and Date_End i.e. no overlapping
whatsoever. In effect checking a date interval.


Here's the psuedo code approach I would take:

' Create variables to store earliest date and latest date
' If Date_Start < Date_End Then
' Assign Date_Start to earlyDate and Date_End to lateDate
' Else
' Assign Date_Start to lateDate and Date_End to earlyDate
' End If
' Next, make sure Date_Start1 is not between the earlyDate and lateDate
' If that fails, your 2nd range overlaps
' Next, make sure Date_End1 is not between the earlyData and lateDate
' If that fails, your 2nd range overlaps
' If you didn't have errors above, then you are safe

This is a pretty generic approach. For VBScript, look up the DateDiff
function for doing the comparisons.
Hope this helps.
Regards,
Peter Foti

Jul 19 '05 #4

P: n/a
"Lynn" <ru******************@hotmail.com> wrote in message
news:1d**************************@posting.google.c om...
On a form I have

Date_Start Date_End

I have a new
Date_Start1 Date_End1 which the use
inputs.

I need to validate that Date_Start1 and Date_End1 are a date range
entirely separate from Date_Start and Date_End i.e. no overlapping
whatsoever. In effect checking a date interval.

Are there any functions out there already written that can do this? It
seems to basic to start comparing and contracting dates! Would like to
do it in Javascript, but happy in vbscript also.

Thanks,
Lynn


If (Date_Start1 >= Date_End) OR (Date_End1 <=Date_Start) Then
'No Overlap
Else
'Overlap
End If

HTH
-Chris Hohmann
Jul 19 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.