This error with a DLookup function can be caused by any of this problems:
1) Misspelled field name in first argument
2) Field name in first argument does not exist in the table or query
3) Expression in first argument has a syntax error
4) Expression in first argument refers to a misspelled field name
5) Expression in first argument refers to a field that does not exist in the
table or query
6) Misspelled table or query name in second argument
7) Table or query name in second argument does not exist
8) Misspelled field name in third argument
9) Field name in third argument does not exist in the table or query
10) Expression in third argument has a syntax error
11) Expression in third argument refers to a misspelled field name
12) Expression in third argument refers to a field that does not exist in
the table or query
14) Expression in third argument has a syntax error (not a validly formed
WHERE clause target)
15) Query in second argument contains a parameter value (e.g., a reference
to a form's textbox, a popup parameter to the user, etc.)
16) The SQL statement of the query in second argument does not have proper
syntax
--
Ken Snell
<MS ACCESS MVP>