Select 在表单字段的控件源中 属性
Select in a form field's control source property
我对 Access 还很陌生,我正在尝试制作一个简单的表单。我的表单显示了一个组合框,该组合框正确显示了 table 中名为 Courses
的所有名称。相同表单中的另一个文本框(称为 Fee
)应该根据在组合框中选择的值将值查找到相同的 table 中。为此,我在 Fee
的控制源 属性 中使用了以下 SQL 语句:
=(SELECT Fee FROM Courses WHERE Courses.Course=Forms.Register.Course;)
在表单中,我总是得到 #Name?
错误。但是,如果我 运行 将其作为普通查询,则相同的指令效果很好。另请注意,该表单显示其他字段以及来自其他 table 的字段。表单的记录源如下:
SELECT Register.*, Courses.Fee FROM Courses INNER JOIN Register ON Courses.Course = Register.Course;
我想这应该是一个简单的任务,但到目前为止我还没有找到解决方案(如果可能的话不使用 VBA)。非常感谢任何帮助,谢谢。
您不能使用 SELECT 语句作为计算控件的控件源,但 Domain functions 用于此:
=DLookup("Fee", "Courses", "Course = Forms!Register!Course")
但您也可以将 Fee
添加为 Courses
组合框的第二列,列宽为 0,因此它是不可见的。
那么简单
=Courses.Column(1)
(.Column
从 0 开始)
我对 Access 还很陌生,我正在尝试制作一个简单的表单。我的表单显示了一个组合框,该组合框正确显示了 table 中名为 Courses
的所有名称。相同表单中的另一个文本框(称为 Fee
)应该根据在组合框中选择的值将值查找到相同的 table 中。为此,我在 Fee
的控制源 属性 中使用了以下 SQL 语句:
=(SELECT Fee FROM Courses WHERE Courses.Course=Forms.Register.Course;)
在表单中,我总是得到 #Name?
错误。但是,如果我 运行 将其作为普通查询,则相同的指令效果很好。另请注意,该表单显示其他字段以及来自其他 table 的字段。表单的记录源如下:
SELECT Register.*, Courses.Fee FROM Courses INNER JOIN Register ON Courses.Course = Register.Course;
我想这应该是一个简单的任务,但到目前为止我还没有找到解决方案(如果可能的话不使用 VBA)。非常感谢任何帮助,谢谢。
您不能使用 SELECT 语句作为计算控件的控件源,但 Domain functions 用于此:
=DLookup("Fee", "Courses", "Course = Forms!Register!Course")
但您也可以将 Fee
添加为 Courses
组合框的第二列,列宽为 0,因此它是不可见的。
那么简单
=Courses.Column(1)
(.Column
从 0 开始)