Thread: VBA Date Format
View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 6,953
Default VBA Date Format

Just so your aren't scarred for life -
I can't say why it didn't work you (maybe an implementation error), but
demoing from the immediate window

? dt
05/26/2006 1:40:00 PM
? cdbl(dt)
38863.5694444444
? cdbl(int(dt))
38863

shows that Int strips the time portion off.

formatdatetime(dt,2) does as well

? formatdatetime(dt,2)
05/26/2006

But further checking shows that it returns a string
? typename(formatdatetime(dt,2))
String

doing a string comparison with that format can give faulty results

? "01/30/2006" < "10/01/2005"
True

the real question is why the original comparison shouldn't work. It should
give the correct answer whether time is involved or not if they are on
separate days. If you wish the same day to be exluded. you could use INT.



--
Regards,
Tom Ogilvy




--
Regards,
Tom Ogilvy


"Kieranz" wrote:

Hi All
I tried the following and it seems to work
If FormatDateTime(dBD,2) < FormatDateTime(dRBD,2) then - ( 2 is
vbshortdate)
Thks and Rgds KZ