&引用;更新后";数据宏运行VBA,但VBA中的SQL SELECT返回更新前的行

&引用;更新后";数据宏运行VBA,但VBA中的SQL SELECT返回更新前的行,vba,ms-access,ms-access-data-macro,Vba,Ms Access,Ms Access Data Macro,我通过SetLocalVar从“更新后”数据宏运行VBA函数。此VBA函数用于查询刚刚更新的行(使用表名和要选择的唯一ID)。但是,我得到的行是更新前的行 因此,就好像我的函数在更新之前运行一样,即使它是一个“更新后”数据宏 为什么在VBA函数选择该行时,该行没有更新 我的问题是: Dim rs As Recordset Set rs = MyDB.OpenRecordset("SELECT * FROM " & table & " WHERE " & primaryKe

我通过SetLocalVar从“更新后”数据宏运行VBA函数。此VBA函数用于查询刚刚更新的行(使用表名和要选择的唯一ID)。但是,我得到的行是更新前的行

因此,就好像我的函数在更新之前运行一样,即使它是一个“更新后”数据宏

为什么在VBA函数选择该行时,该行没有更新

我的问题是:

Dim rs As Recordset
Set rs = MyDB.OpenRecordset("SELECT * FROM " & table & " WHERE " & primaryKey & " = " & primaryId, dbOpenSnapshot)

请发布相关函数,或至少发布相关代码片段。
Dim rs As Recordset rs=MyDB.OpenRecordset(“SELECT*FROM”&table&“WHERE”&primaryKey&“=”&primaryId,dbOpenSnapshot)
宏、VBA调用和查询所有工作。但是,我得到的字段是更新前字段。(我似乎无法更好地格式化这段代码;对不起,应该是两行。)检查一下,你的函数头是什么样子的?不确定你所说的头是什么意思。你是说这个吗<代码>公共函数addToCache(op,table,primaryKey,primaryId)同样,我从查询中得到了正确的一行。它只是更新之前的旧字段值。