【问题标题】:How can I update multiple records which match with the Environ Username? Microsoft Access database engine cannot find the input table如何更新与 Environ 用户名匹配的多条记录? Microsoft Access 数据库引擎找不到输入表
【发布时间】:2021-12-24 04:50:38
【问题描述】:

我想将状态字段更改为“已完成”,其中环境用户名在整个表中匹配,并且该表包含 400 多条记录,这些记录与环境用户名匹配大约 150 条记录。

Private Sub Command1_Click()

Dim db as DAO.Database
Dim rs as DAO.Recordset

set db = currentdb
set rs = db.OpenRecordset("UPDATE * from Upload_Report set status = '" & Completed & "' Where Analyst = '" & Environ("Username") & "'")

If Not rs.EOF then
    MsgBox "Records were updated!", VBInformation
Else
    MsgBox "Match not found", VBExclamation
End if

End sub

代码抛出

“运行时错误‘3078’:
Microsoft Access 数据库引擎找不到输入表或查询 'UPDATE * from Upload_Report set status = 'completed' where Analyst = '*****'”。请确保它存在并且其名称拼写正确。”

我与我的表 (Upload_Report) 进行了交叉验证,没有发现拼写错误。

如何更新与 Environ 用户名匹配的多条记录?

【问题讨论】:

    标签: vba ms-access ms-access-2010


    【解决方案1】:

    OpenRecordset 用于读取。

    你想要的是 db.Execute"UPDATE ..."

    【讨论】:

    • 现在显示编译错误:预期的函数或变量。我是新手。请帮我解决这个问题。
    • "执行不返回记录集。"因此,您必须在执行后删除“set rs =”和 if 块。
    • 除此之外,如果记录不与环境用户进行数学运算,我该如何添加 if 语句?
    猜你喜欢
    • 2017-06-25
    • 1970-01-01
    • 2012-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多