有一个绑定到主表的主窗体,public_OUT_Detalle_PMC。并且有一个表单绑定到一个较小的表 public_ficha_negocio,它是较大表中的字段选择。第二个表单用作子表单,我想将对子表单所做的编辑保存到主表中。
我曾尝试使用简单的 SQL 更新查询,但由于某些未知原因,我无法使其正常工作,这让我发疯。
Dim db As DAO.Database
Dim qdfFN As DAO.QueryDef
Dim rsFN As DAO.Recordset
Set db = CurrentDb
Set qdfFN = db.CreateQueryDef("")
qdfFN.sql = "select * from [public_ficha_negocio] where [Codigo_RQM_Necesidad]='" & Me.Codigo_filtro.value & "';"
qdfFN.ReturnsRecords = True
Set rsFN = qdfFN.OpenRecordset
Dim qdf As DAO.QueryDef
Dim sSQL As String
sSQL = "UPDATE [public_OUT_Detalle_PMC] SET " & _
{a lot of fields are updated, I cut them out of the paste for simplicity}
"WHERE [public_OUT_Detalle_PMC].[Codigo_RQM_Necesidad] = '" & rsFN!Codigo_RQM_Necesidad & "');"
Set qdf = db.CreateQueryDef("", sSQL)
qdf.Execute dbFailOnError
qdf.Close
qdfFN.Close
rsFN.Close
Set qdfFN = Nothing
Set rsFN = Nothing
Set qdf = Nothing
该查询qdfFN
用于检索较小表的记录,我想将哪些数据“传递”到较大表。该查询qdf
要么不起作用,要么我不了解如何使用这些 vba 对象。
我曾经Debug.print
检查过的值rsFN
并且它们是正确的,我的意思是,我想传递到更大的表上的值就在那里!这让我头疼
由于我是 VBA 和 Access 新手,所以我不知道在 vba 中执行操作时,您必须对
'text'
值进行单引号,而不是对numeric
值进行引号并使用哈希date
值进行引号。insert into