2009-12-09 86 views
0

在MS-访问我一个消息框出现MS-访问 - 如何

查询的执行过程中运行,运行多个查询一个宏,在警告消息框自动选择是“你是即将运行更新..........你确定要运行这个查询吗?“

我该如何自动选择所有这些情况,以便在没有人为干预的情况下运行宏。

回答

1

您可以关闭暂时的警告是这样的:

DoCmd.SetWarnings = False 
DoCmd.RunSQL ... 
DoCmd.SetWarnings = True 
+0

这是不好的建议,因为1)您还需要添加docmd.setwarnings = true来处理错误; 2)运行execute会给你更好的错误。 – 2009-12-09 17:50:34

1

它通常最好使用在这样的情况下执行,以捕获错误:

Dim db As Database, qdf As QueryDef, strSQL As String 

Set db = CurrentDb 
Set qdf = db.QueryDefs("Query17") 
qdf.Execute dbFailOnError 
Debug.Print qdf.RecordsAffected 

或者

strSQL="UPDATE SomeTable SET SomeField=10" 
db.Execute strSQL, dbFailOnError 
Debug.Print db.RecordsAffected 

使用dbFailOnError和错误陷阱捕获错误或多或少是必需的,并且有一个数字其他有用的方面Execute Statement

+1

除非您需要recordsaffected值您不需要定义db或qdf。 – 2009-12-09 17:51:25