[AccessD] New thrd: dates

Heenan, Lambert Lambert.Heenan at aig.com
Fri Aug 22 08:53:43 CDT 2014


Actually DateValue() and CDate() are different. Cdate will convert anything that looks like a date (such as a string) to a Date type value.  DateValue will also convert strings to dates, but its real purpose is to return *JUST* the date. So if the data you pass to it includes a time stamp, you get back just the date, as in...

? datevalue("8/22/2014 9:50:30 AM")
8/22/2014

Lambert

-----Original Message-----
From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan
Sent: Thursday, August 21, 2014 7:41 PM
To: Access Developers discussion and problem solving
Subject: Re: [AccessD] New thrd: dates

No reason other than habit.  They both do exactly the same thing as far as I can tell.

On 21 Aug 2014 at 19:06, Bill Benson wrote:

> Love - and am deeply grateful for, Stuart, the simplicity in your 
> answer. Loved even more "I always use" w/o problems, that means field 
> tested. Any reason you use DateValue rather than CDate?
> 
> 
> 
> -----Original Message-----
> From: accessd-bounces at databaseadvisors.com
> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart 
> McLachlan Sent: Thursday, August 21, 2014 5:50 PM To: Access 
> Developers discussion and problem solving Subject: Re: [AccessD] New
> thrd: dates
> 
> OK, here goes as asked for (an Access FE/BE):
> 
> Answers in line.
> 
> On 21 Aug 2014 at 15:46, Bill Benson wrote:
> 
> > I am really sorry I asked this one now! My question "what is meant 
> > by a GUI date just needed a yes or no to my illustration, to wit, "
> > Is this a bound textbox reading a date from the back end?"; [or if 
> > not that, something else - and if so, what?].
> > 
> 
> Yes.   It's the formatted date as displayed in a control on a form or
> report.
> 
> > Jim further said the effect would depend on
> > <<1) the format the data is put into by the BE I already posted:
> > <<my backend had Aug 4th 2014 stored as 08/04/2014
> 
> No, your date is NOT stored iin an Access BE as 08.04/02014.  It is
> stored as the number 41855.0   which is the number of days since 30
> Dec 1899.
> 
> > I had written (*emphasis* added):
> > > When *I take that value* to enter it into the database (remember 
> > > backend is US) would I write
> > >
> > > Sql = "Insert into myTable (name, address, effective_dt) values 
> > > ('" & txtname & "','" & txtaddress & "', #" & txteffectivedate & 
> > > "#)"
> > 
> > > Or
> > > Sql = "Insert into myTable (name, address, effective_dt) values 
> > > ('" & txtname & "','" & txtaddress & "', #" &
> > > cdate(txteffectivedate) & "#)"
> 
> It doesn't matter whether the BE is US or UK, the date is stored as 
> the same number.
> 
> The problem is that the SQL engine in the Access FE requires a date 
> surrounded by "#"s to be in a specific format, which may not be the 
> format in which txtEffectiveDate is being displayed. (In a European 
> FE, the txtEffectiveDate could be 08/04/2014, 04/08/2014,"04 Aug 
> 2014","Aug 4 2014" , "Auot 4 2014", or many other language specific
> formats.)       
> 
> There are two common solutions:
> 
>  Sql = "Insert into myTable (name, address, effective_dt) values ('" &  
> txtname & "','" & txtaddress & _ "', #" & 
> format(txteffectivedate,"mm/dd/yyyy") & "#)"
> 
> or
> 
>  Sql = "Insert into myTable (name, address, effective_dt) values ('" &  
> txtname & "','" & txtaddress & _ "',Datevalue('" & txteffectivedate & 
> "'))"
> 
> FWIW, I always use the second version and have never had a problem 
> with it.
> 
> 
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
> 
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
> 


-- 
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com



More information about the AccessD mailing list