View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
OssieMac OssieMac is offline
external usenet poster
 
Posts: 2,510
Default truncate date; nix the time component

Not entirely sure of what you are attempting to achieve. That is do you want
VBA code or formula for a worksheet?

Worksheet function for date only is TODAY() while in VBA it is Date.

NOW() function is date and time for both Worksheet and VBA.

To convert a Date/Time to date only in VBA

Dim myDate as Date
myDate = DateValue(Format(Now(), "dd mmm yyyy"))

Can replace Now() with a cell reference containing Date and Time and also,
depending on your local date format, you might want to use format
"mmm dd yyyy". When using DateValue, it is best to use the literal month
(mmm) rather than numeric.

Hope this helps

--
Regards,

OssieMac


"cate" wrote:

I am reading a cell that was populated with NOW(). It contains a time
part I do not want. There has got to be a trunc() function somewhere,
but I can't find it. Was going to try WorksheetFunction.Date, but
it's not there? (I thought that anything available for use on the
sheet would show up here)

So, do I build a string and use DateTime.DateValue, or DateSerial, to
get just the date part and eliminate the time component? It works ok,
but it just doesn't seem like it's the way to do it.

Thank you.

Here is one example of removing time. Is this the proper way to do
it? (will be 'vba'd)

http://www.techonthenet.com/excel/qu...emove_time.php
Excel: Convert date/time value to a date value (remove time portion)
in Excel 2003/XP/2000/97
Answer: In order for Excel to recognize the values as dates, you will
need to modify your formula as follows:

=DATEVALUE(MONTH(A1) & "/" & DAY(A1) & "/" & YEAR(A1))
.