我遇到了一个与我正在处理的MS Access数据库有关的问题。我会尽力给予尽可能多的细节。我所有的SQL代码都是MS Access为我生成的。MS Access - #Name? DLookup上的错误(窗体上的文本框,查询查询)
首先,我有一个查询,告诉我一个人有多少时间投入项目工作 -
SELECT Functions.f_Person, Sum(Functions.f_Hrs) AS SumOff_Hrs
FROM Functions
GROUP BY Functions.f_Person;
f_Person是在组合框中(链接在“员工”表e_person案文是主键),f_Hrs & Sumoff_Hrs是数字。我意识到我没有使用该主键的最佳做法。这个数据库将在概念验证后重建。
从这个查询我创建了通吃一个人的签约时间和减去第二个查询以前总 -
SELECT q_TotalHrs.f_Person, Employees.e_Hrs, q_TotalHrs.SumOff_Hrs, [Employees]![e_Hrs]-[q_TotalHrs]![SumOff_Hrs] AS HrsAvailable
FROM Employees, q_TotalHrs
GROUP BY q_TotalHrs.f_Person, Employees.e_Hrs, q_TotalHrs.SumOff_Hrs, [Employees]![e_Hrs]-[q_TotalHrs]![SumOff_Hrs];
这给了我东西沿着这些路线 -
Person Contract Hrs Sumoff_Hrs HrsAvailable
----------------------------------------------------
Ali 37 12 25
Al 37 1 36
Andy 37 1 36
Dave 37 13 24
Gaz 37 1 36
John 37 1 36
Paul 37 6 31
George 37 2 35
Ringo 37 1 36
我也有一个窗体(frm_Projects),用于创建具有子窗体(frm_Functions)的新项目用于向这些项目添加人员。此子表单填充第一个查询中引用的“函数”表。
因此,用户将添加一个函数(f_Function),然后需要小时数(f_Hrs)并从组合框(f_Person)中选择一个名称。子窗体视图设置为“连续窗体”。现在
我的问题:
我在上应显示可供选择的人的时间子窗体输入行结束时创建一个文本框。在文本框属性我加入这个代码到控件来源 -
=DLookUp("[HrsAvailable]","[q_HrsAvailable]","[f_Person] =" & [Forms]![frm_Functions]![f_Person])
这给了我#NAME?窗体视图上的错误。
我意识到这是一个常见问题,但似乎无法使用我找到的解决方案在我自己的数据库上解决它。有人能帮我解决这个问题吗?
-----------通过@Andre
=DLookUp("[HrsAvailable]","[q_HrsAvailable]","[f_Person] =" & [Forms]![frm_Projects]![frm_Functions].[Form]![f_Person])
http://access.mvps.org/access/forms/frm0031.htm - 您需要Forms!Mainform!Subform1.Form!ControlName – Andre
Hi @ Andre对此表示感谢。看起来像一个很好的资源。尽管如此,我仍然在努力处理公式的布局。我试了一堆组合。它应该看起来像 - ...&[Forms]![frm_Projects]![Subform1]。[frm_Functions]![cbx_Person])? – Jamsandwich