Date type library

M

madeleine

Hi

I'm hoping that someone can help me on this, I'm sure I must be going
mad, I'm trying to declare something as VbShortDate, I get told that I
need to include its type library, I can't actually find out what type
library it lives in.

Hopefully someone can tell me what box to tick in the references menu.

All help much appreciated.

Thanks

Madeleine
 
T

Tom Ogilvy

from the object browser in the VBE

Const vbShortDate = 2
Member of VBA.VbDateTimeFormat

so it is a member of the VBA type library.

However, it is a constant, not a data type, I don't see how you could
declare something as type vbShortDate. You would declare it as date and
format it as vbshortdate.
 
G

Gary Brown

The Library Reference is 'VBA'...

Description
Visual Basic For Applications
Name
VBA
GUID
{000204EF-0000-0000-C000-000000000046}
Path
C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6.DLL

--
HTH,
Gary Brown
(e-mail address removed)
If this post was helpful to you, please select ''YES'' at the bottom of the
post.
 
M

madeleine

Aha Tom thanks.

What I was trying to do was get rid of the time aspect from a date,
such that I could compare two dates without having to worry about
whether it was at 8 in the morning or midday. Is this something that
you think vbShortDate could help with?

Thanks again

Madeleine
 
T

Tom Ogilvy

Dates are stored as

In Excel cells,
Number of days since 0 Jan 1900.fraction of a day(i.e. time)

so just do

dim dt as Date, dt1 as Date
dt = Int(myval)
dt1 = Int(myval1)
if dt = dt1 then
' they are the same day

truncating the decimal value gives you just the date (removes the time)

VBA is compatible, but of course supports dates before 1900 (negative
numbers) and doesn't see 1900 as a leap year. So dates after Feb 28, 1900
will be the same.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top