I suspect that you have a references problem.
To do its job, Access makes use of various external program and object
libraries. If you move a database from one machine to another, these
references may be "broken".
When this happens, you need to take steps to let Access repair the
reference(s) ON THE COMPUTER WHERE THE FAILURE IS OCCURING.
Here are MVP Doug Steele's instructions for how to do it:
*** Quote ***
Any time functions that previously worked suddenly don't, the first thing to
suspect is a references problem.
This can be caused by differences in either the location or file version of
certain files between the machine where the application was developed, and
where it's being run (or the file missing completely from the target
machine). Such differences are common when new software is installed.
On the machine(s) where it's not working, open any code module (or open the
Debug Window, using Ctrl-G, provided you haven't selected the "keep debug
window on top" option). Select Tools | References from the menu bar. Examine
all of the selected references.
If any of the selected references have "MISSING:" in front of them, unselect
them, and back out of the dialog. If you really need the reference(s) you
just unselected (you can tell by doing a Compile All Modules), go back in
and reselect them.
If none have "MISSING:", select an additional reference at random, back out
of the dialog, then go back in and unselect the reference you just added. If
that doesn't solve the problem, try to unselect as many of the selected
references as you can (Access may not let you unselect them all), back out
of the dialog, then go back in and reselect the references you just
unselected. (NOTE: write down what the references are before you delete
them, because they'll be in a different order when you go back in)
For far more than you could ever want to know about this problem, check out
http://www.accessmvp.com/djsteele/AccessReferenceErrors.html
Just so you know: the problem will occur even if the library that contains
the specific function that's failing doesn't have a problem.
**** End Quote ****
After you fix the references then you should be able to use
START_DATE Between DateAdd("d", -180, Date()) and Date()
--
John Spencer
Access MVP 2002-2005, 2007
Center for Health Program Development and Management
University of Maryland Baltimore County
.
Rohn said:
I get an error message: Compile error, in query expression 'START_DATE
Between DateAdd("d", -180, Date()) and Date()'.
on the second script, the database crashes and asks if I want to send a
report to Microsoft. The data type of the START_DATE field is date/time.
John, your a genius....... the data type seems to be the issue!
So far this gets the right data if I manually put the date/time into the
statement: The statement below does work, is there a statement that
collects the date/time?
SELECT dbo_EMP_ABSENCE.EMP_ID, Sum(dbo_EMP_ABSENCE.SEVERITY) AS
SumOfSEVERITY, dbo_EMPLOYEE.PAY_STATUS INTO [(T)Severity]
FROM dbo_EMPLOYEE INNER JOIN dbo_EMP_ABSENCE ON dbo_EMPLOYEE.ID =
dbo_EMP_ABSENCE.EMP_ID
WHERE (((dbo_EMP_ABSENCE.START_DATE) Between #9/5/2006 12:1:0# And
#2/28/2007 12:1:0#))
GROUP BY dbo_EMP_ABSENCE.EMP_ID, dbo_EMPLOYEE.PAY_STATUS
HAVING (((dbo_EMPLOYEE.PAY_STATUS)="A"));