Ayo said:
=IIf(IsNull([Forms]![Project Number]) And IsNull([Forms]![Task Number]),"
",DLookUp("[Project]","[SITE LIST]","[Project Number] = Forms![Project
Number]" And "[Task Number] = Forms![Task Number]"))
The formular is surpose to perform the DLookup only if the are values in the
[Forms]![Project Number] and ([Forms]![Task Number], but that is not what is
happening. Can someone tell me what it is I am doing wrong? Thank you.
I saw this:
1) You reference the Forms collection but don't specify a form name
(assuming "Project Number" and "Task Number" are controls on some form).
If you form's name was "frmProject" then a proper reference would look
like this:
IIf(IsNull([Forms]![frmProject]![Project Number]) Or
IsNull([Forms]![frmProject]![Task Number])
2) When you check if the Project Number or Task Number is Null you'll
want to return "" (empty string) if either of them is Null so you want
to use " Or " when checking for IsNull() in both controls.
=IIf(IsNull([Forms]![frmProject]![Project Number]) Or
IsNull([Forms]![frmProject]![Task Number])
3) When doing the DLookup() I'd put the control references outside of
the quotes like this:
DLookUp("[Project]","[SITE LIST]","[Project Number] = " &
Forms![frmProject]![Project Number] & " And [Task Number] = " &
Forms![frmProject]![Task Number]))
Assumptions:
- you form (whatever its name is) is open when this is evaluated.
- "Project Number" and "Task Number" are numbers and not text.
Considering all this try this:
=IIf(IsNull([Forms]![frmProject]![Project Number]) Or
IsNull([Forms]![frmProject]![Task Number])
"",
DLookUp("[Project]","[SITE LIST]","[Project Number] = " &
Forms![frmProject]![Project Number] & " And [Task Number] = " &
Forms![frmProject]![Task Number]))
Replace "frmProject" with your form name.
--
'--------------------------
' John Mishefske
' UtterAccess Editor
' 2007 Microsoft MVP
'--------------------------