如何从一条记录中读取一个字段

Sin*_*tic 4 ms-access recordset access-vba ms-access-2010

我知道我在想这个,但我想检查单个记录中的单个值/字段.例如,我想知道主键为33的记录中"closedDate"字段的值是否为null.

我想的是:

dim db as DAO.Database
dim rs as DAO.Recordset
set db = CurrentDb
set rs = db.OpenRecordset("record_holdData")

If not isNull(rs.Fields("closedDate")) then
     'do nothing
Else
     'add a close date
End If
Run Code Online (Sandbox Code Playgroud)

但我不认为这是对的.它没有指定记录号.在应用程序中,表单通过绑定到相关记录来打开,但我不认为CurrentDb考虑到这一点而是引用整个表.

所以我的问题是,如何以这种方式打开记录集并仅在该特定记录中引用该字段?

Han*_*sUp 5

你找到了你想要的答案,但我会改用DLookup函数.

Dim db As DAO.Database
Dim strWhere As String
Dim varClosedDate As Variant
Set db = CurrentDb
strWhere = "id = 33"
varClosedDate = DLookup("closedDate","record_holdData",strWhere)
If IsNull(varClosedDate) = True Then
    'use today's date as closedDate
    db.Execute "UPDATE record_holdData Set closedDate = Date() WHERE " & strWhere
End If
Run Code Online (Sandbox Code Playgroud)