【发布时间】:2018-07-16 04:28:50
【问题描述】:
我有一个带有按钮的表单。 我希望按钮从表(表单填充)中创建查询
我做了按钮,进入代码生成器
Private sub button123_on click()
End sub
我在 DOA 中查找了查询,但我无法弄清楚,甚至不知道这是否是我应该使用的。我只需要知道私有子之后会发生什么
如果语句? 昏暗的东西? doCmd? ??????????♂️
我只是在寻找基本布局
我是否在其他地方构建查询,然后放置命令为按钮运行它?它必须在 VBA 中,因为我需要选择记录的 TOP 变量。 TOP 发生了变化,所以我无法在 sql 中执行此操作。
经过一番研究,这是我的代码
Private Sub Command487_Click()
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
Dim strSQL As String
Set db = CurrentDb
Dim varX As Variant
Set qdef = db.CreateQueryDef("MyQuery")
Application.RefreshDatabaseWindow
varX = DLookup("[Quantity1]", "tblFilledRequests", "[OrderID] = [Forms]![frmFilledRequests]![OrderID]")
strSQL = "SELECT TOP varX tblFilledRequests.OrderID, tblFilledRequests.RequestFillDate, tblFilledRequests.Issuer, tblFilledRequests.Unit, tblFilledRequests.ContactNumber, tblFilledRequests.CommonName1, tblFilledRequests.Quantity1, tblFilledRequests.CommonName2, tblFilledRequests.Quantity2, tblWeapons.IssueCount, tblWeapons.StockNumber, tblWeapons.SerialNumber, tblWeapons.Status " _
& "FROM tblWeapons INNER JOIN tblFilledRequests ON tblWeapons.WeaponID = tblFilledRequests.CommonName1 " _
& "WHERE (((tblFilledRequests.OrderID)=Forms!frmFilledRequests!OrderID) And ((tblWeapons.Status)=""AVAILABLE"")) " _
& "ORDER BY tblWeapons.IssueCount, tblWeapons.StockNumber;"
qdf.SQL = strSQL
DoCmd.OpenQuery "MyQuery"
qdf.Close
Set qdef = Nothing
Set db = Nothing
End Sub
我得到一个空白查询,并且我得到一条错误消息 qdf.SQL 对象变量或未设置块变量
【问题讨论】: