By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
434,985 Members | 2,884 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 434,985 IT Pros & Developers. It's quick & easy.

Date queries

P: 47
Hi,

Sorry to be reopening this thread. but i am still unable to get this solved. The code i have used is
Expand|Select|Wrap|Line Numbers
  1. DoCmd.OpenReport "NameOfTheReport", acViewPreview, , Date - 3
I get an error message saying "Compile Error : Can't find project or library"

If this is closed out, i can deliver my project. Please help!!!

Thanks
Neo
Jul 24 '08 #1
Share this Question
Share on Google+
11 Replies


puppydogbuddy
Expert 100+
P: 1,923
I think your problem is with Date - 3. If you are referring to the system date, the syntax should be as follows: Date() - 3
Jul 25 '08 #2

P: 47
I think your problem is with Date - 3. If you are referring to the system date, the syntax should be as follows: Date() - 3

When i tried doing that, the paranthesis () just disappeared. and it ended up being the way it is now. Am unable to change that.
Jul 25 '08 #3

P: 69
Since Access is looking for an SQL string clause without the "WHERE", I think you should try something like:

Expand|Select|Wrap|Line Numbers
  1. "DateFieldInQuery = #" & Date() - 3 & "#"
"DateFieldInQuery" is whatever is the name that you have assigned in the query to the date you want to test. The # before and after tells Access that the number returned by Date() - 3 should be teated as a date.
Jul 25 '08 #4

P: 47
Since Access is looking for an SQL string clause without the "WHERE", I think you should try something like:

Expand|Select|Wrap|Line Numbers
  1. "DateFieldInQuery = #" & Date() - 3 & "#"
"DateFieldInQuery" is whatever is the name that you have assigned in the query to the date you want to test. The # before and after tells Access that the number returned by Date() - 3 should be teated as a date.
But would this not be a query? how do i insert this in the where clause in the code?
Jul 25 '08 #5

Expert 100+
P: 374
But would this not be a query? how do i insert this in the where clause in the code?
Expand|Select|Wrap|Line Numbers
  1. "SELECT * FROM Tablename WHERE Datefieldname =  # " & Date() - 3 & "#"
  2.  
Jul 25 '08 #6

Expert 100+
P: 374
The way that you would put that into your openreport command is as follows:

Expand|Select|Wrap|Line Numbers
  1. DoCmd.OpenReport "NameOfTheReport", acViewPreview, , "Datefieldname =  # " & Date() - 3 & "#"
  2.  
Jul 25 '08 #7

P: 47
The way that you would put that into your openreport command is as follows:

Expand|Select|Wrap|Line Numbers
  1. DoCmd.OpenReport "NameOfTheReport", acViewPreview, , "Datefieldname =  # " & Date() - 3 & "#"
  2.  
I still get the same error message. "Cannot find project or library" and the 'date' in the code is highlighted.
Jul 25 '08 #8

puppydogbuddy
Expert 100+
P: 1,923
try:
Format(Date(),"mm/dd/yyyy") - 3
Jul 25 '08 #9

Expert 100+
P: 634
Hi

I have had this problem a few times over the years. It seems to be a referencing problem (perhaps when using A2000 on a DB created in A2003 but in A2000 format), and yes the parentheses do disappear when Date() is used. These only seem necessary in Query designer. I have never found a satisfactory answer to this, but in the past, in desperation, I have resorted to Int(Now()) in stead of Date !!


MTB
Jul 25 '08 #10

Expert Mod 2.5K+
P: 2,545
Hi. When Date() is no longer recognised as a valid function the problem seems to arise as a result of missing or incorrect project references for that installation, as MTB said. To trace which one it may be best to compare the project references for the 'problem' installation to those for a 'known good' PC running Access with no problems.

I experienced this on a laptop installation, and all the development databases I was working on failed on normal built-in functions - Date was just one of many that caused compile errors and other completely daft symptoms. There was a missing reference in my case, but in others I know of it was a conflicting reference (to the wrong version of a DLL). It's really annoying because there is actually nothing wrong with the underlying DBs or their code, and trying to trace non-existent errors is such a fruitless task.

-Stewart
Jul 25 '08 #11

P: 47
Hi. When Date() is no longer recognised as a valid function the problem seems to arise as a result of missing or incorrect project references for that installation, as MTB said. To trace which one it may be best to compare the project references for the 'problem' installation to those for a 'known good' PC running Access with no problems.

I experienced this on a laptop installation, and all the development databases I was working on failed on normal built-in functions - Date was just one of many that caused compile errors and other completely daft symptoms. There was a missing reference in my case, but in others I know of it was a conflicting reference (to the wrong version of a DLL). It's really annoying because there is actually nothing wrong with the underlying DBs or their code, and trying to trace non-existent errors is such a fruitless task.

-Stewart
Well the int(Now()) command helps. Thanks guys......
Jul 28 '08 #12

Post your reply

Sign in to post your reply or Sign up for a free account.