It may be that, when assigning a value to the temporary variable, the date has been misinterpreted as an arithmetical expression. If we take today's date, for example, the expression would evaluate to a number (1.4903129657228E-03) which, in Access's implementation
of the date/time data type, represents a date/time value 2 minutes and 9 seconds after midnight on 30 December 1899. We can see this in the debug window:
? Format(12/04/2013,"mm/dd/yyyy hh:nn:ss")
12/30/1899 00:02:09
If that value is formatted as a date it will not show the hours:minutes:seconds:
? Format(12/04/2013,"mm/dd/yyyy")
12/30/1899
If the expression is wrapped in the hash date delimiter characters when assigning the value, however, it will assign the correct date/time value:
? Format(#12/04/2013#,"mm/dd/yyyy")
12/04/2013
So you might be able to get the right result by wrapping the value in the hash characters when assigning it to the temporary variable, but, like Tom, I never use temporary variables, so am unsure whether this is possible or not.