rcount = DCount("F1", "T1")
Do While rcount > 0
DoCmd.OpenQuery "q1"
Loop
当这段代码无法正常工作时,有人能告诉我吗?它循环,但似乎忽略了rcount > 0
答案 0 :(得分:1)
执行删除查询后,更新 rcount 的值。
rcount = DCount("F1", "T1")
Do While rcount > 0
'DoCmd.OpenQuery "q1"
CurrentDb.Execute "q1", dbFailOnError
rcount = DCount("F1", "T1")
Loop
请注意,使用CurrentDb.Execute
代替DoCmd.OpenQuery
,您可以在不关闭SetWarnings
的情况下避免确认消息。它还允许您使用 dbFailOnError ,它将通知您无法以静默方式失败的问题。
但是我不明白为什么你要一次删除所有 T1 记录,你可以一次删除所有 T1 记录...
CurrentDb.Execute "DELETE FROM T1;", dbFailOnError