我在Access(VBA)中收到错误3061。你能帮我吗?它看起来像我正确地写了选择。我知道这个问题在这里被多次提出过,但我已经尝试了几乎所有给出的答案,但我无法解决我的问题。这就是我寻求帮助的原因。
Private Sub cmdPLCompleto_Click()
On Error GoTo cmdPLCompleto_Click_Err
Dim d As DAO.Database
Dim r As DAO.Recordset
Dim strSQL2 As String
Set d = CurrentDb()
strSQL2 = "SELECT DISTINCT qryPLCARTASCompleto.ZDR FROM qryPLCARTASCompleto"
Set r = d.OpenRecordset(strSQL2)
If r.EOF Then
MsgBox "The Recordset is empty."
End If
更新
这是来自qryPLCARTASCompleto
的SQL:
SELECT PLCARTAS.*, Mid([ICP ID],3,4) AS ZDR
FROM PLCARTAS
WHERE (((PLCARTAS.FECHA)=[Forms]![frmCartas]![txtFecha]));
答案 0 :(得分:1)
ZDR不是字段名称,或者您的查询是指表单上的字段。
如果是最后一个,则必须在打开记录集之前指定该参数。
例如:
Dim d As DAO.Database
Dim q As DAO.Querydef
Dim r As DAO.Recordset
Dim strSQL2 As String
strSQL2 = "SELECT DISTINCT ZDR FROM qryPLCARTASCompleto"
Set d = CurrentDb
Set q = d.Querydefs("", strSQL2)
q.Parameters(0).Value = [Forms]![frmCartas]![txtFecha]
Set r = q.OpenRecordset()
If r.EOF Then
MsgBox "The Recordset is empty."
End If