Ejecutar consulta con parametros con OpenRecordset
Publicado por PAM (13 intervenciones) el 12/03/2008 10:35:03
Hola a tod@s,
Mi problema es el siguiente:
Tengo una consulta que necesita de parámetros de un formulario y la ejecuto desde un botón del formulario mediante Visual Basic desde el evento presionar el botón pero cuando se ejecuta me aparece una ventana diciendo "Pocos parámetros. Se esperaba 1." y no ejecuta la consulta.
La consulta MiConsulta tiene el siguiente aspecto:
SELECT * FROM Tabla WHERE CampoTabla<=Formularios!MiFormulario!CampoFormulario
Y el código del evento:
Private Sub Miboton_Click()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim myCount As Integer
Dim cont As Long
Dim sql As String
Dim p_CampoFormulario As Date
p_CampoFormulario = Forms!MiFormulario!CampoFormulario
Set db = CurrentDb
sql = "SELECT * FROM MiConsulta;"
Set rs = db.OpenRecordset(sql)
myCount = rs.RecordCount
If myCount > 0 Then
rs.MoveFirst
Do Until rs.EOF ' Mientras queden registros.
......
rs.MoveNext
Loop
rs.Requery
End If
rs.Close
db.Close
Set db = Nothing
End Sub
Espero que alguien sepa cual es el problema y me pueda ayudar.
Saludos.
Mi problema es el siguiente:
Tengo una consulta que necesita de parámetros de un formulario y la ejecuto desde un botón del formulario mediante Visual Basic desde el evento presionar el botón pero cuando se ejecuta me aparece una ventana diciendo "Pocos parámetros. Se esperaba 1." y no ejecuta la consulta.
La consulta MiConsulta tiene el siguiente aspecto:
SELECT * FROM Tabla WHERE CampoTabla<=Formularios!MiFormulario!CampoFormulario
Y el código del evento:
Private Sub Miboton_Click()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim myCount As Integer
Dim cont As Long
Dim sql As String
Dim p_CampoFormulario As Date
p_CampoFormulario = Forms!MiFormulario!CampoFormulario
Set db = CurrentDb
sql = "SELECT * FROM MiConsulta;"
Set rs = db.OpenRecordset(sql)
myCount = rs.RecordCount
If myCount > 0 Then
rs.MoveFirst
Do Until rs.EOF ' Mientras queden registros.
......
rs.MoveNext
Loop
rs.Requery
End If
rs.Close
db.Close
Set db = Nothing
End Sub
Espero que alguien sepa cual es el problema y me pueda ayudar.
Saludos.
Valora esta pregunta


0