【发布时间】:2023-03-05 10:35:01
【问题描述】:
大家好,我在尝试执行 RunSql 方法时收到此错误,这是我的查询
Dim x As Integer
Dim strSQL As String
x = Me.PONumber
strSQL = "DELETE TblPoMaterials.PONumber, TblPoMaterials.ProductionDate, TblPoMaterials.AcceptedNumber, TblPoMaterials.RejectedNumber, TblPoMaterials.Shift " & vbCrLf & _
"FROM TblPoMaterials " & vbCrLf & _
"WHERE (((TblPoMaterials.PONumber)=" & x & ") AND ((TblPoMaterials.ProductionDate)=[Forms]![FrmProductionEdit]![Zdate]) AND ((TblPoMaterials.AcceptedNumber)=[Forms]![FrmProductionEdit]![AcceptedProduct]) AND ((TblPoMaterials.RejectedNumber)=[Forms]![FrmProductionEdit]![RejectedProduct]) AND ((TblPoMaterials.Shift)=[Forms]![FrmProductionEdit]![Shift]));"
DoCmd.RunSQL strSQL
主要思想是将变量x作为上一个查询的条件,我尝试使用
DoCmd.OpenQuery strSQL
我知道这是不对的,但我只是想看看会发生什么,它产生了一个不同的运行时错误。 提前致谢
【问题讨论】:
-
编辑问题以显示确切的错误消息。 PONumber 是数字类型字段吗?如果没有,需要撇号分隔符:
='" & x & "')。或以与其他参数相同的方式引用 PONumber 参数。 -
PoNumber 字段是数字,关于错误消息它在我添加 dim x 作为整数后消失了,声明在代码中的错误位置谢谢
-
这能回答你的问题吗? Microsoft Access VBA - Run time error '3075'