Access通过选择一个值获取表中另外的相关值

2017-12-01 16:44:00
黄善超
原创
114

很多网友问到,如果通过选中表中的某个值,自动获取表中对应的值。

比如通过选择学生的学号,自动填写学生的姓名。


如这个示例,有如下一个表,表名表1,字段ID,类型。



通过选择id,自动获取类型


详细源码:

Private Sub Combo1_AfterUpdate()
   Me.Text3 = DLookup("类型", "表1", "id=" & Me.Combo1 & "")
End Sub


以下是dlookup的帮助说明:

以使用 DLookup 函数从指定记录集(一个域 (域:由表、查询或 SQL 表达式定义的记录集。域聚合函数返回有关特定域或记录集的统计信息。))内获取特定字段的值。


语法

表达式.DLookup(Expr, Domain, Criteria)

表达式 一个代表 Application 对象的变量。

参数

名称 必选/可选 数据类型 说明
Expr 必选 String 标识要返回其值的字段的表达式。可以是用来标识表或查询中字段的字符串表达式 (字符串表达式:任一求值为一列连续字符的表达式。表达式的元素可以是:返回字符串或字符串 Variant (VarType 8) 的函数;字符串字面值、常量、变量或 Variant。),也可以是对该字段上的数据执行计算的表达式。在 expr 中,可以包含表中字段的名称、窗体上的控件、常量或函数。如果 expr 包含函数,那么它可以是内置的,也可以是用户定义的,但不能是另一个域聚合函数或 SQL 聚合函数。
Domain 必选 String 字符串表达式,用于标识组成域的记录集。可以是表名称或不需要参数的查询的查询名称。
Criteria 可选 Variant 可选的字符串表达式,用于限制作为 DLookup 函数执行对象的数据的范围。例如,criteria 通常等效于 SQL 表达式中的 WHERE 子句,但它不使用单词 WHERE。如果省略 criteriaDLookup 函数将针对整个域对 expr 求值。任何包含在 criteria 中的字段必须也是 domain 中的字段,否则 DLookup 函数将返回 Null
    分享