DateValue Function Doesn't Accept Date Literals (116117)



The information in this article applies to:

  • Microsoft Excel for Windows 95 7.0a
  • Microsoft Excel for Windows 5.0c
  • Microsoft Excel for the Macintosh 5.0a

This article was previously published under Q116117

SYMPTOMS

In the versions of Microsoft Excel listed above, the Visual Basic DateValue function does not accept a date literal (for example, #8/12/71#) as an argument.

NOTE: In Microsoft Excel 97 for Windows and Microsoft Excel 98 Macintosh Edition, the DateValue function DOES accept a date literal.

MORE INFORMATION

In Visual Basic Help, the following information is contained in the entry for the DateValue function:

The 'date' named argument is normally a string expression representing a date from January 1, 100 through December 31, 9999. However, 'date' can also be any expression that can represent a date, a time, or both a date and time, in that range.

The last sentence of this entry is only partially correct. The DateValue function does not accept a date literal in the #<date># format. If you attempt to use a date literal in the DateValue function, you receive the error message
Type mismatch
and your subroutine does not run.

The DateValue function accepts only strings that represent dates ("July 4, 1776", "1-Jan-95", "9/1/94", and so on) or other functions that return the same type of information [the DATE() function, the NOW() function, and so on].

Modification Type:MinorLast Reviewed:8/15/2003
Keywords:KB116117