小编Sam*_*ler的帖子

使用VBA设置查询的参数

所以我有一个查询,如下所示,它运行在一个参数上.

我想知道是否有办法使用VBA来设置查询参数.我目前有大约40个查询完全相同,除了产品ID,因此我有40个报告...如果我有一个查询,我仍然需要写出VBA中productid的代码,但我可以使用一个报告而不是那个报告.

只需一个查询和一个报告就可以轻松生活,并让VBA设置参数,因为用户不知道产品ID

SELECT TblTotalSale.ProductID, TblProduct.Description, TblTotalSale.Size, TblTotalSale.SalePrice, TblTotalSale.Day
FROM TblProduct INNER JOIN TblTotalSale ON TblProduct.ProductID = TblTotalSale.ProductID
WHERE (((TblTotalSale.ProductID)=[]));
Run Code Online (Sandbox Code Playgroud)

VBA

Private Sub IPA_Click()

DoCmd.OpenReport "RptProduct", acViewReport, , [TblTotalSale.ProductID="5"]

End Sub
Run Code Online (Sandbox Code Playgroud)

我也试过tblTotalSale.ProductID ="5"我知道我在使用SQL我应该使用VBA ...

谢谢

山姆

sql ms-access vba

1
推荐指数
1
解决办法
647
查看次数

如果......不明白

我有一大段代码,除非出现用户错误,否则一切正常.用户必须在其中放入值的文本框,然后单击按钮以更新表.

如果用户将该框留空并单击该按钮,则弹出一个msg框,要求他们填写一个值,如果该框包含一个值,则运行一系列命令和SQL.

不幸的是,当盒子留空时,会弹出msg框,但无论如何命令和SQL都会运行.

我想我可能只是遗漏了一些非常明显的东西,但我无法理解它.这是导致我出现问题的代码块...

If IsNull(Me.TxtStockValue) Then MsgBox "Please Select An Item To Update Stock And Ensure A Value Has Been Entered" Else:
DoCmd.RunSQL SQLDelete1
DoCmd.SetWarnings False
DoCmd.RunSQL SQLStory
DoCmd.RunSQL SQLDelete2
DoCmd.RunSQL SQLUpdate
DoCmd.SetWarnings True
Run Code Online (Sandbox Code Playgroud)

txtStockValue是txt框,不能为空.其他似乎没有按我想要的方式工作.

谢谢

山姆

sql ms-access vba

0
推荐指数
1
解决办法
120
查看次数

标签 统计

ms-access ×2

sql ×2

vba ×2