I face that problems
07/01/2003 06/30/2006 > it should be 3
01/01/2003 02/28/2005 >could i get 2 years and 2 months
01/01/2003 03/01/2005 >could i get 2 years and 2 months and 1
day 8 5529
inamori wrote: I face that problems
07/01/2003 06/30/2006 > it should be 3 01/01/2003 02/28/2005 >could i get 2 years and 2 months
01/01/2003 03/01/2005 >could i get 2 years and 2 months and 1 day
Could you explain why these aren't the correct results?
The difference between 7/1/2003 and 6/30/2006 is:
3 years, 11 months, and 29 days
The difference between 1/1/2003 and 2/28/2005 is:
2 years, 1 months, and 27 days
The difference between 1/1/2003 and 3/1/2005 is:
2 years, 2 months, and 0 days
What is the logic used to determine when to add one day to the results?
Should the difference between 07/01/2003 and 07/01/2003 be 1 day? How about
07/01 and 07/02?
This is the code I used to get the above results:
<%
dim arDates(2,1), iYrs, iMths, iDays, i
arDates(0,0) = #20030701#
arDates(0,1) = #20060630#
arDates(1,0) = #20030101#
arDates(1,1) = #20050228#
arDates(2,0) = #20030101#
arDates(2,1) = #20050301#
for i = 0 to 2
Response.Write "The difference between " & arDates(i,0) & _
" and " & arDates(i,1) & " is: "
iYrs=DateDiff("yyyy",arDates(i,0),arDates(i,1))
Response.Write iYrs & " years, "
iMths=DateDiff("m",arDates(i,0),arDates(i,1))
if iMths < 12*iYrs then iYrs = iYrs  1
if iMths  12*iYrs < 0 then
Response.Write " 0 months, and "
else
Response.Write iMths  12*iYrs & " months, and "
end if
iDays = DateDiff("d",arDates(i,0), _
DateAdd("m", 1*iMths, arDates(i,1)))
if iDays < 1 then iDays = 0
Response.Write iDays & " days"
Response.Write "<BR>"
next
%>
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 offline, then remove the
"NO SPAM"
Bob Barrows [MVP] wrote on 21 aug 2004 in
microsoft.public.inetserver.asp.general: Could you explain why these aren't the correct results?
The difference between 7/1/2003 and 6/30/2006 is: 3 years, 11 months, and 29 days
Hi, Bob,
2000 years ago, people where used to including the first and last day in a
declaration of time passed.
It was like a 100 meter long barbed wire fence, with one pole per meter
consisting of 101 poles.
Likewise a duration of 7 weeks, 49 days in modern count, was called 50
days, pentecost [whitsun, 49 days after easter] being the Greek word
pentakosta for 50.
I suppose the OQ could be of ancient stock.

Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)
Thanks for yoiur programming
add one day because of business logic
Lease agreement
01/01/2003 12/31/2006 3 years
01/01/2003 01/01/2007 3 years + 1 day
That why i need add one day on the end date....
"Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> ¦b¶l¥ó
news:%2****************@TK2MSFTNGP09.phx.gbl ¤¤¼¶¼g... inamori wrote: I face that problems
07/01/2003 06/30/2006 > it should be 3 01/01/2003 02/28/2005 >could i get 2 years and 2 months
01/01/2003 03/01/2005 >could i get 2 years and 2 months and 1 day Could you explain why these aren't the correct results?
The difference between 7/1/2003 and 6/30/2006 is: 3 years, 11 months, and 29 days The difference between 1/1/2003 and 2/28/2005 is: 2 years, 1 months, and 27 days The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 0 days
What is the logic used to determine when to add one day to the results? Should the difference between 07/01/2003 and 07/01/2003 be 1 day? How
about 07/01 and 07/02?
This is the code I used to get the above results: <% dim arDates(2,1), iYrs, iMths, iDays, i arDates(0,0) = #20030701# arDates(0,1) = #20060630# arDates(1,0) = #20030101# arDates(1,1) = #20050228# arDates(2,0) = #20030101# arDates(2,1) = #20050301#
for i = 0 to 2 Response.Write "The difference between " & arDates(i,0) & _ " and " & arDates(i,1) & " is: " iYrs=DateDiff("yyyy",arDates(i,0),arDates(i,1)) Response.Write iYrs & " years, " iMths=DateDiff("m",arDates(i,0),arDates(i,1)) if iMths < 12*iYrs then iYrs = iYrs  1 if iMths  12*iYrs < 0 then Response.Write " 0 months, and " else Response.Write iMths  12*iYrs & " months, and " end if iDays = DateDiff("d",arDates(i,0), _ DateAdd("m", 1*iMths, arDates(i,1))) if iDays < 1 then iDays = 0 Response.Write iDays & " days" Response.Write "<BR>" next %>
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 offline, then remove the "NO SPAM"
Change the code to this:
<%
dim arDates(2,1), iYrs, iMths, iDays, i, dDate
arDates(0,0) = #20030701#
arDates(0,1) = #20060630#
arDates(1,0) = #20030101#
arDates(1,1) = #20050228#
arDates(2,0) = #20030101#
arDates(2,1) = #20050301#
for i = 0 to 2
dDate = DateAdd("d",1,arDates(i,1))
Response.Write "The difference between " & arDates(i,0) & _
" and " & dDate & " is: "
iYrs=DateDiff("yyyy",arDates(i,0),dDate)
Response.Write iYrs & " years, "
iMths=DateDiff("m",arDates(i,0),dDate)
if iMths < 12*iYrs then iYrs = iYrs  1
if iMths  12*iYrs < 0 then
Response.Write " 0 months, and "
else
Response.Write iMths  12*iYrs & " months, and "
end if
iDays = DateDiff("d",arDates(i,0), _
DateAdd("m", 1*iMths, dDate))
if iDays < 1 then iDays = 0
Response.Write iDays & " days"
Response.Write "<BR>"
next
%>
inamori wrote: Thanks for yoiur programming
add one day because of business logic
Lease agreement
01/01/2003 12/31/2006 3 years
01/01/2003 01/01/2007 3 years + 1 day
That why i need add one day on the end date....
"Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> ¦b¶l¥ó news:%2****************@TK2MSFTNGP09.phx.gbl ¤¤¼¶¼g... inamori wrote: I face that problems
07/01/2003 06/30/2006 > it should be 3 01/01/2003 02/28/2005 >could i get 2 years and 2 months
01/01/2003 03/01/2005 >could i get 2 years and 2 months and 1 day
Could you explain why these aren't the correct results?
The difference between 7/1/2003 and 6/30/2006 is: 3 years, 11 months, and 29 days The difference between 1/1/2003 and 2/28/2005 is: 2 years, 1 months, and 27 days The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 0 days
What is the logic used to determine when to add one day to the results? Should the difference between 07/01/2003 and 07/01/2003 be 1 day? How about 07/01 and 07/02?
This is the code I used to get the above results: <% dim arDates(2,1), iYrs, iMths, iDays, i arDates(0,0) = #20030701# arDates(0,1) = #20060630# arDates(1,0) = #20030101# arDates(1,1) = #20050228# arDates(2,0) = #20030101# arDates(2,1) = #20050301#
for i = 0 to 2 Response.Write "The difference between " & arDates(i,0) & _ " and " & arDates(i,1) & " is: " iYrs=DateDiff("yyyy",arDates(i,0),arDates(i,1)) Response.Write iYrs & " years, " iMths=DateDiff("m",arDates(i,0),arDates(i,1)) if iMths < 12*iYrs then iYrs = iYrs  1 if iMths  12*iYrs < 0 then Response.Write " 0 months, and " else Response.Write iMths  12*iYrs & " months, and " end if iDays = DateDiff("d",arDates(i,0), _ DateAdd("m", 1*iMths, arDates(i,1))) if iDays < 1 then iDays = 0 Response.Write iDays & " days" Response.Write "<BR>" next %>
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 offline, then remove the "NO SPAM"

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 offline, then remove the
"NO SPAM"
Yes. That is what I said in my revious response isn't it?
Just in case you missed it, here it is again:
************************************************** **************
Change the code to this:
<%
dim arDates(2,1), iYrs, iMths, iDays, i, dDate
arDates(0,0) = #20030701#
arDates(0,1) = #20060630#
arDates(1,0) = #20030101#
arDates(1,1) = #20050228#
arDates(2,0) = #20030101#
arDates(2,1) = #20050301#
for i = 0 to 2
dDate = DateAdd("d",1,arDates(i,1))
Response.Write "The difference between " & arDates(i,0) & _
" and " & dDate & " is: "
iYrs=DateDiff("yyyy",arDates(i,0),dDate)
Response.Write iYrs & " years, "
iMths=DateDiff("m",arDates(i,0),dDate)
if iMths < 12*iYrs then iYrs = iYrs  1
if iMths  12*iYrs < 0 then
Response.Write " 0 months, and "
else
Response.Write iMths  12*iYrs & " months, and "
end if
iDays = DateDiff("d",arDates(i,0), _
DateAdd("m", 1*iMths, dDate))
if iDays < 1 then iDays = 0
Response.Write iDays & " days"
Response.Write "<BR>"
next
%>
************************************************** *********
inamori wrote: so could I add one date of the end date in your program
so i can get what i want???
"Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> ¦b¶l¥ó news:%2****************@TK2MSFTNGP09.phx.gbl ¤¤¼¶¼g... inamori wrote: I face that problems
07/01/2003 06/30/2006 > it should be 3 01/01/2003 02/28/2005 >could i get 2 years and 2 months
01/01/2003 03/01/2005 >could i get 2 years and 2 months and 1 day
Could you explain why these aren't the correct results?
The difference between 7/1/2003 and 6/30/2006 is: 3 years, 11 months, and 29 days The difference between 1/1/2003 and 2/28/2005 is: 2 years, 1 months, and 27 days The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 0 days
What is the logic used to determine when to add one day to the results? Should the difference between 07/01/2003 and 07/01/2003 be 1 day? How about 07/01 and 07/02?
This is the code I used to get the above results: <% dim arDates(2,1), iYrs, iMths, iDays, i arDates(0,0) = #20030701# arDates(0,1) = #20060630# arDates(1,0) = #20030101# arDates(1,1) = #20050228# arDates(2,0) = #20030101# arDates(2,1) = #20050301#
for i = 0 to 2 Response.Write "The difference between " & arDates(i,0) & _ " and " & arDates(i,1) & " is: " iYrs=DateDiff("yyyy",arDates(i,0),arDates(i,1)) Response.Write iYrs & " years, " iMths=DateDiff("m",arDates(i,0),arDates(i,1)) if iMths < 12*iYrs then iYrs = iYrs  1 if iMths  12*iYrs < 0 then Response.Write " 0 months, and " else Response.Write iMths  12*iYrs & " months, and " end if iDays = DateDiff("d",arDates(i,0), _ DateAdd("m", 1*iMths, arDates(i,1))) if iDays < 1 then iDays = 0 Response.Write iDays & " days" Response.Write "<BR>" next %>
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 offline, then remove the "NO SPAM"

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 offline, then remove the
"NO SPAM"
HI, I have tried your program
The output is something like that
The difference between 7/1/2003 and 7/1/2006 is: 3 years, 0 months, and 0
days
The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 0
days
The difference between 1/1/2003 and 3/2/2005 is: 2 years, 2 months, and 1
days
But actually what i want is
The difference between 7/1/2003 and 7/1/2006 is: 3 years, 0 months, and 1
days
The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 1
days
The difference between 1/1/2003 and 3/2/2005 is: 2 years, 2 months, and 2
days
can it be done? is it really logic error in computer mechanism
"Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> wrote in message
news:OJ*************@TK2MSFTNGP12.phx.gbl... Yes. That is what I said in my revious response isn't it? Just in case you missed it, here it is again: ************************************************** ************** Change the code to this:
<% dim arDates(2,1), iYrs, iMths, iDays, i, dDate arDates(0,0) = #20030701# arDates(0,1) = #20060630# arDates(1,0) = #20030101# arDates(1,1) = #20050228# arDates(2,0) = #20030101# arDates(2,1) = #20050301#
for i = 0 to 2 dDate = DateAdd("d",1,arDates(i,1)) Response.Write "The difference between " & arDates(i,0) & _ " and " & dDate & " is: " iYrs=DateDiff("yyyy",arDates(i,0),dDate) Response.Write iYrs & " years, " iMths=DateDiff("m",arDates(i,0),dDate) if iMths < 12*iYrs then iYrs = iYrs  1 if iMths  12*iYrs < 0 then Response.Write " 0 months, and " else Response.Write iMths  12*iYrs & " months, and " end if iDays = DateDiff("d",arDates(i,0), _ DateAdd("m", 1*iMths, dDate)) if iDays < 1 then iDays = 0 Response.Write iDays & " days" Response.Write "<BR>" next %>
************************************************** *********
inamori wrote: so could I add one date of the end date in your program
so i can get what i want???
"Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> ¦b¶l¥ó news:%2****************@TK2MSFTNGP09.phx.gbl ¤¤¼¶¼g... inamori wrote: I face that problems
07/01/2003 06/30/2006 > it should be 3 01/01/2003 02/28/2005 >could i get 2 years and 2 months
01/01/2003 03/01/2005 >could i get 2 years and 2 months and 1 day
Could you explain why these aren't the correct results?
The difference between 7/1/2003 and 6/30/2006 is: 3 years, 11 months, and 29 days The difference between 1/1/2003 and 2/28/2005 is: 2 years, 1 months, and 27 days The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 0 days
What is the logic used to determine when to add one day to the results? Should the difference between 07/01/2003 and 07/01/2003 be 1 day? How about 07/01 and 07/02?
This is the code I used to get the above results: <% dim arDates(2,1), iYrs, iMths, iDays, i arDates(0,0) = #20030701# arDates(0,1) = #20060630# arDates(1,0) = #20030101# arDates(1,1) = #20050228# arDates(2,0) = #20030101# arDates(2,1) = #20050301#
for i = 0 to 2 Response.Write "The difference between " & arDates(i,0) & _ " and " & arDates(i,1) & " is: " iYrs=DateDiff("yyyy",arDates(i,0),arDates(i,1)) Response.Write iYrs & " years, " iMths=DateDiff("m",arDates(i,0),arDates(i,1)) if iMths < 12*iYrs then iYrs = iYrs  1 if iMths  12*iYrs < 0 then Response.Write " 0 months, and " else Response.Write iMths  12*iYrs & " months, and " end if iDays = DateDiff("d",arDates(i,0), _ DateAdd("m", 1*iMths, arDates(i,1))) if iDays < 1 then iDays = 0 Response.Write iDays & " days" Response.Write "<BR>" next %>
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 offline, then remove the "NO SPAM"
 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 offline, then remove the "NO SPAM"
I goofed. The code should be:
<%
dim arDates(2,1), iYrs, iMths, iDays, i, dDate
arDates(0,0) = #20030701#
arDates(0,1) = #20060630#
arDates(1,0) = #20030101#
arDates(1,1) = #20050228#
arDates(2,0) = #20030101#
arDates(2,1) = #20050301#
for i = 0 to 2
dDate = DateAdd("d",1,arDates(i,1))
Response.Write "The difference between " & arDates(i,0) & _
" and " & arDates(i,1) & " is: "
iYrs=DateDiff("yyyy",arDates(i,0),dDate)
Response.Write iYrs & " years, "
iMths=DateDiff("m",arDates(i,0),dDate)
if iMths < 12*iYrs then iYrs = iYrs  1
if iMths  12*iYrs < 0 then
Response.Write " 0 months, and "
else
Response.Write iMths  12*iYrs & " months, and "
end if
iDays = DateDiff("d",arDates(i,0), _
DateAdd("m", 1*iMths, dDate))
if iDays < 1 then iDays = 0
Response.Write iDays & " days"
Response.Write "<BR>"
next
%>
Inamori Izumi wrote: HI, I have tried your program
The output is something like that The difference between 7/1/2003 and 7/1/2006 is: 3 years, 0 months, and 0 days The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 0 days The difference between 1/1/2003 and 3/2/2005 is: 2 years, 2 months, and 1 days
But actually what i want is
The difference between 7/1/2003 and 7/1/2006 is: 3 years, 0 months, and 1 days The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 1 days The difference between 1/1/2003 and 3/2/2005 is: 2 years, 2 months, and 2 days
can it be done? is it really logic error in computer mechanism "Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> wrote in message news:OJ*************@TK2MSFTNGP12.phx.gbl... Yes. That is what I said in my revious response isn't it? Just in case you missed it, here it is again: ************************************************** ************** Change the code to this:
<% dim arDates(2,1), iYrs, iMths, iDays, i, dDate arDates(0,0) = #20030701# arDates(0,1) = #20060630# arDates(1,0) = #20030101# arDates(1,1) = #20050228# arDates(2,0) = #20030101# arDates(2,1) = #20050301#
for i = 0 to 2 dDate = DateAdd("d",1,arDates(i,1)) Response.Write "The difference between " & arDates(i,0) & _ " and " & dDate & " is: " iYrs=DateDiff("yyyy",arDates(i,0),dDate) Response.Write iYrs & " years, " iMths=DateDiff("m",arDates(i,0),dDate) if iMths < 12*iYrs then iYrs = iYrs  1 if iMths  12*iYrs < 0 then Response.Write " 0 months, and " else Response.Write iMths  12*iYrs & " months, and " end if iDays = DateDiff("d",arDates(i,0), _ DateAdd("m", 1*iMths, dDate)) if iDays < 1 then iDays = 0 Response.Write iDays & " days" Response.Write "<BR>" next %>
************************************************** *********
inamori wrote: so could I add one date of the end date in your program
so i can get what i want???
"Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> ¦b¶l¥ó news:%2****************@TK2MSFTNGP09.phx.gbl ¤¤¼¶¼g... inamori wrote: > I face that problems > > 07/01/2003 06/30/2006 > it should be 3 > > > > 01/01/2003 02/28/2005 >could i get 2 years and 2 > months > > > 01/01/2003 03/01/2005 >could i get 2 years and 2 > months and 1 day
Could you explain why these aren't the correct results?
The difference between 7/1/2003 and 6/30/2006 is: 3 years, 11 months, and 29 days The difference between 1/1/2003 and 2/28/2005 is: 2 years, 1 months, and 27 days The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 0 days
What is the logic used to determine when to add one day to the results? Should the difference between 07/01/2003 and 07/01/2003 be 1 day? How about 07/01 and 07/02?
This is the code I used to get the above results: <% dim arDates(2,1), iYrs, iMths, iDays, i arDates(0,0) = #20030701# arDates(0,1) = #20060630# arDates(1,0) = #20030101# arDates(1,1) = #20050228# arDates(2,0) = #20030101# arDates(2,1) = #20050301#
for i = 0 to 2 Response.Write "The difference between " & arDates(i,0) & _ " and " & arDates(i,1) & " is: " iYrs=DateDiff("yyyy",arDates(i,0),arDates(i,1)) Response.Write iYrs & " years, " iMths=DateDiff("m",arDates(i,0),arDates(i,1)) if iMths < 12*iYrs then iYrs = iYrs  1 if iMths  12*iYrs < 0 then Response.Write " 0 months, and " else Response.Write iMths  12*iYrs & " months, and " end if iDays = DateDiff("d",arDates(i,0), _ DateAdd("m", 1*iMths, arDates(i,1))) if iDays < 1 then iDays = 0 Response.Write iDays & " days" Response.Write "<BR>" next %>
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 offline, then remove the "NO SPAM"
 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 offline, then remove the "NO SPAM"

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 offline, then remove the
"NO SPAM"
thanks
let me test tomorrow when I work
"Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> ¦b¶l¥ó
news:ON*************@TK2MSFTNGP11.phx.gbl ¤¤¼¶¼g... I goofed. The code should be:
<% dim arDates(2,1), iYrs, iMths, iDays, i, dDate arDates(0,0) = #20030701# arDates(0,1) = #20060630# arDates(1,0) = #20030101# arDates(1,1) = #20050228# arDates(2,0) = #20030101# arDates(2,1) = #20050301#
for i = 0 to 2 dDate = DateAdd("d",1,arDates(i,1)) Response.Write "The difference between " & arDates(i,0) & _ " and " & arDates(i,1) & " is: " iYrs=DateDiff("yyyy",arDates(i,0),dDate) Response.Write iYrs & " years, " iMths=DateDiff("m",arDates(i,0),dDate) if iMths < 12*iYrs then iYrs = iYrs  1 if iMths  12*iYrs < 0 then Response.Write " 0 months, and " else Response.Write iMths  12*iYrs & " months, and " end if iDays = DateDiff("d",arDates(i,0), _ DateAdd("m", 1*iMths, dDate)) if iDays < 1 then iDays = 0 Response.Write iDays & " days" Response.Write "<BR>" next %> Inamori Izumi wrote: HI, I have tried your program
The output is something like that The difference between 7/1/2003 and 7/1/2006 is: 3 years, 0 months, and 0 days The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 0 days The difference between 1/1/2003 and 3/2/2005 is: 2 years, 2 months, and 1 days
But actually what i want is
The difference between 7/1/2003 and 7/1/2006 is: 3 years, 0 months, and 1 days The difference between 1/1/2003 and 3/1/2005 is: 2 years, 2 months, and 1 days The difference between 1/1/2003 and 3/2/2005 is: 2 years, 2 months, and 2 days
can it be done? is it really logic error in computer mechanism "Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> wrote in message news:OJ*************@TK2MSFTNGP12.phx.gbl... Yes. That is what I said in my revious response isn't it? Just in case you missed it, here it is again: ************************************************** ************** Change the code to this:
<% dim arDates(2,1), iYrs, iMths, iDays, i, dDate arDates(0,0) = #20030701# arDates(0,1) = #20060630# arDates(1,0) = #20030101# arDates(1,1) = #20050228# arDates(2,0) = #20030101# arDates(2,1) = #20050301#
for i = 0 to 2 dDate = DateAdd("d",1,arDates(i,1)) Response.Write "The difference between " & arDates(i,0) & _ " and " & dDate & " is: " iYrs=DateDiff("yyyy",arDates(i,0),dDate) Response.Write iYrs & " years, " iMths=DateDiff("m",arDates(i,0),dDate) if iMths < 12*iYrs then iYrs = iYrs  1 if iMths  12*iYrs < 0 then Response.Write " 0 months, and " else Response.Write iMths  12*iYrs & " months, and " end if iDays = DateDiff("d",arDates(i,0), _ DateAdd("m", 1*iMths, dDate)) if iDays < 1 then iDays = 0 Response.Write iDays & " days" Response.Write "<BR>" next %>
************************************************** *********
inamori wrote: so could I add one date of the end date in your program
so i can get what i want???
"Bob Barrows [MVP]" <re******@NOyahoo.SPAMcom> ¦b¶l¥ó news:%2****************@TK2MSFTNGP09.phx.gbl ¤¤¼¶¼g... > inamori wrote: >> I face that problems >> >> 07/01/2003 06/30/2006 > it should be 3 >> >> >> >> 01/01/2003 02/28/2005 >could i get 2 years and 2 >> months >> >> >> 01/01/2003 03/01/2005 >could i get 2 years and 2 >> months and 1 day > > Could you explain why these aren't the correct results? > > The difference between 7/1/2003 and 6/30/2006 is: > 3 years, 11 months, and 29 days > The difference between 1/1/2003 and 2/28/2005 is: > 2 years, 1 months, and 27 days > The difference between 1/1/2003 and 3/1/2005 is: > 2 years, 2 months, and 0 days > > What is the logic used to determine when to add one day to the > results? Should the difference between 07/01/2003 and 07/01/2003 be > 1 day? How about 07/01 and 07/02? > > This is the code I used to get the above results: > <% > dim arDates(2,1), iYrs, iMths, iDays, i > arDates(0,0) = #20030701# > arDates(0,1) = #20060630# > arDates(1,0) = #20030101# > arDates(1,1) = #20050228# > arDates(2,0) = #20030101# > arDates(2,1) = #20050301# > > for i = 0 to 2 > Response.Write "The difference between " & arDates(i,0) & _ > " and " & arDates(i,1) & " is: " > iYrs=DateDiff("yyyy",arDates(i,0),arDates(i,1)) > Response.Write iYrs & " years, " > iMths=DateDiff("m",arDates(i,0),arDates(i,1)) > if iMths < 12*iYrs then iYrs = iYrs  1 > if iMths  12*iYrs < 0 then > Response.Write " 0 months, and " > else > Response.Write iMths  12*iYrs & " months, and " > end if > iDays = DateDiff("d",arDates(i,0), _ > DateAdd("m", 1*iMths, arDates(i,1))) > if iDays < 1 then iDays = 0 > Response.Write iDays & " days" > Response.Write "<BR>" > next > %> > > 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 offline, then > remove the "NO SPAM"
 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 offline, then remove the "NO SPAM"
 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 offline, then remove the "NO SPAM"
This discussion thread is closed Replies have been disabled for this discussion. Similar topics
4 posts
views
Thread by CJM 
last post: by

6 posts
views
Thread by Lofty 
last post: by

1 post
views
Thread by intl04 
last post: by

4 posts
views
Thread by Paolo 
last post: by

1 post
views
Thread by PMBragg 
last post: by

7 posts
views
Thread by Adrian 
last post: by

5 posts
views
Thread by sr 
last post: by

6 posts
views
Thread by kevinjwilson 
last post: by
           