를 예상 내가 액세스 런타임 오류 받고 있어요 :액세스 런타임 오류 '3061': 매개 변수가 너무 적습니다. 1
'3061': Too few parameters. Expected 1
하위 보고서와 양식에서 일부 VBA 코드를 실행하려고합니다.
SQL 쿼리에서 변수 (CurAssetID
)와 직접 연결 (Forms!Details!ID
)을 사용해 보았지만 같은 오류가 발생합니다. MsgBox에 올바른 값을 입력했는지 확인하기 위해 넣었습니다.
SQL 쿼리의 마지막 부분을 값 (HAVING (((Assignments.AssetID)=1));"
)으로 바꾸면 올바르게 작동합니다. 여기서 무슨 일이 일어나고 어떻게 해결할 수 있습니까? Forms!Details!ID
숫자 (Integer
또는 Long
)를해야되는 거지 경우 I는 추가적인 조치로
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)
' ...
:
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 매개 변수를 볼 수 없습니다. –