Combobox引用访问2010查询

时间:2012-02-29 20:14:52

标签: sql ms-access combobox

我有一个带有组合框的表单,该组合框链接到一个表(TblProduct),该表显示产品描述并按产品ID排序

我还有一个名为txtStockValue的文本框。

我希望用户从组合框中选择产品,进行库存计数并在txtStockValue框中输入库存值。

然后有一个确认更新的按钮。

我有按钮的以下编码,但我把问题放在论坛的这一部分,因为我认为我的问题在查询...我从来没有使用过组合框

编码如下

Private Sub StockOK_Click()
Dim SQLDelete1 As String
Dim SQLDelete2 As String
Dim SQLUpdate As String

SQLDelete1 = "DELETE * FROM TblStock WHERE TblStock.ProductID = CboStockItem.ProductID"
SQLDelete2 = "DELETE * FROM TblTotalSales WHERE TblTotalSales.ProductID = CboStockItem.ProductID"
SQLUpdate = "INSERT INTO TblStock (ProductID, StockLevel) SELECT ProductID FROM CboStockItem.ProductID AND SELECT StockLevel FROM TxtStockValue"

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.RunSQL SQLDelete2
DoCmd.RunSQL SQLUpdate

End Sub

我尝试将组合框引用为CboStockItem(组合框的名称),但我认为我没有正确完成此操作。

代码基本上应该从2个表中删除所有项目,其中项目ID与从组合框中选择的产品相同,然后将库存的新值插入到库存表中。

第二点是,在删除数据之前,应将其更新为两个excel文件进​​行存储(一个名为Stock的股票Excel文件和一个名为sales的销售Excel文件)。我认为我可以这样做,但我想把它包括在内。

1 个答案:

答案 0 :(得分:4)

设置SQL的字符串应如下所示:

SQLDelete1 = "DELETE * FROM TblStock WHERE TblStock.ProductID = " & cboStockItem.value