我得到一個Access運行時錯誤:訪問運行時錯誤「3061」:參數太少。預計1
'3061': Too few parameters. Expected 1
試圖運行從分報告形式的一些VBA代碼時。
我試着在SQL查詢中使用變量(CurAssetID
)以及直接鏈接(Forms!Details!ID
),但都導致相同的錯誤。我只是爲了驗證它正在拾取正確的值而放入MsgBox。
如果我更換一個值(HAVING (((Assignments.AssetID)=1));"
)的SQL查詢的最後部分,它工作正常。這裏發生了什麼,我該如何解決它?
Private Sub LineSelect_Click()
CurAssetID = Forms!Details!ID
Status = MsgBox(CurAssetID, vbOKOnly)
Dim LastAssignment As DAO.Recordset
LastAssignmentSQL = "SELECT Assignments.AssetID, Last(Assignments.LocationID) AS LastLocationID FROM Assignments GROUP BY Assignments.AssetID HAVING (((Assignments.AssetID)=CurAssetID));"
Set LastAssignment = CurrentDb.OpenRecordset(LastAssignmentSQL, dbOpenDynaset, dbSeeChanges)
您的SQL無法看到您的VBA參數。 –