如何使用vba访问权限添加/更新/删除多表数据

我有4张桌子:

  1. 表OrderA链接文本文件中的外部数据
  2. 表OrderB链接文本文件中的外部数据
  3. 表OrderDetail是合并表2的OrderA和OrderB(OrderA和追加OrderB)
  4. 表RecTable

表1和表2中的数据发生变化。如果将数据添加到表1和2:同样将其添加到表3。

如果表1和表2中的数据被更新,表3也将被更新。

如果从表1和表2中删除数据,则将其从表3中删除并添加到表4。

ِ Dlookup对于这项工作而言很低。我该如何使用记录集?

编辑: 我写这段代码,但不能在删除中工作。

  

运行时错误3135       JOIN操作中的语法错误。

Dim strSqlAddtoHazf As String
Dim strFindDelete As String    
Dim rsOrderHazf As DAO.Recordset
   strFindDelete = "SELECT IDPhotoO,jensO,vazeiatO,dateaddO,customeridO,orderidO,usernameO,tedadO,FileNameO   FROM  
 OrderDetail  LEFT JOIN RataPhotoOrderDetail ON (OrderDetail.IDPhotoO =  
 RataPhotoOrderDetail.id) WHERE (RataPhotoOrderDetail.id Is Null and  
 OrderDetail.IDGharardadO Is Null);"    
 strSqlAddtoHazf = " insert into OrderHazf (IDPhotoH,jensH,vazeiatH,dateaddH,customeridH,orderidH,usernameH,tedadH,FileNameH ) " &  
strFindDelete
 DoCmd.SetWarnings False
DoCmd.RunSQL strSqlAddtoHazf
DoCmd.SetWarnings True
 strFindDelete = "SELECT IDPhotoO,FileNameO   FROM OrderDetai  LEFT JOIN OrderHazf ON (OrderDetail.IDPhotoO = orderHazf.IDPhotoH) WHERE (Orderhazf.IDPhotoH Is Null and OrderDetail.IDGharardadO Is Null);"
Set rsOrderHazf = CurrentDb().OpenRecordset(strFindDelete)

Do Until rsOrderHazf.EOF()

rsOrderHazf.Delete

Loop

' '''

njepc 回答:如何使用vba访问权限添加/更新/删除多表数据

我建议您将所有查询放在宏中,并将每个查询放在宏行中, 将它们按您希望查询运行的顺序放置,第一个查询位于最上面一行。 例如,如果查询1首先运行,然后结果将确定查询2将执行的操作

将查询1作为要在宏条件下运行的第一个查询,将查询2作为要在宏条件下运行的第二个查询,等等。

然后将宏名称附加到命令按钮上。

本文链接:https://www.f2er.com/2852741.html

大家都在问