我知道这很愚蠢,但我无法弄清楚这一点。下面的当前代码插入满足TxtBox1条件的记录集,然后通过重写它们来删除表中的数据,以满足符合TxtBox2标准的新记录集。
我需要的是将TxtBox1中的记录集满足条件插入表中,然后在循环时将记录集的下一次迭代添加到表中。 (不写/删除第一个记录集返回)
Dim db As Database
Dim rst As DAO.Recordset
Dim rrow As Integer, strCmboNmbr As Integer
Dim start As Object
Set db = CurrentDb()
strCmboNmbr = (Left(Forms("Match Summary").Controls("CmbNum").Value, 1))
For rrow = 1 To strCmboNmbr 'lets say 2
Set start = Forms("Match Summary").Controls("TxtBox" & rrow) 'TxtBox1, TxtBox2, etc.
DoCmd.RunSQL "SELECT [Oracle JE].* INTO Unmatched FROM [Oracle JE] WHERE [Oracle JE].[Account Code]=" & start 'This is a MAKE Table Query
Next rrow
答案 0 :(得分:2)
如果您不想覆盖该表,则在首次运行后需要追加:
If rrow = 1 then
DoCmd.RunSQL "SELECT [Oracle JE].* INTO Unmatched FROM [Oracle JE]
WHERE [Oracle JE].[Account Code]=" & start
Else
DoCmd.RunSQL "INSERT INTO Unmatched SELECT [Oracle JE].* FROM [Oracle JE]
WHERE [Oracle JE].[Account Code]=" & start
End
理想情况下,您预定了一个表格。然后,您可以为其添加主键和索引,先将其清除,然后运行一系列追加。