Hola a todos, mi problema es el siguiente:
Tengo una funcion en un modulo, que la uso para abrir un recordset según una cadena pasada como parámetro.
Public Function abrir_rst(sql As String) As ADODB.Recordset
Set abrir_rst = New ADODB.Recordset
abrir_rst.Open sql, conex, adOpenDynamic, adLockBatchOptimistic, -1
End Function
Tengo un formulario con un dataGrid, y lo que quiero hacer es que cuando haga clic en un registro (que describe un curso), automáticamente me muestre los alumnos que asisten al curso, en una lista.
Private Sub grilla_Click()
lblcurso.Caption = grilla.Columns(0).CellValue(grilla.Bookmark)
sql = "SELECT alumnos.legajo, alumnos.apellido, alumnos.nombre from alumnos, inscripciones, curso WHERE alumnos.legajo = inscripciones.legajo AND inscripciones.codcurso = curso.codcurso and curso.codcurso = '" & grilla.Columns(0).CellValue(grilla.Bookmark) & "' ORDER BY alumnos.apellido, alumnos.nombre"
Set rsalumnos = abrir_rst(sql)
rsalumnos.MoveFirst
While Not rsalumnos.EOF
lista.AddItem rsalumnos!legajo & Chr(32) & Chr(32) & Chr(32) & Chr(32) & Chr(32) & Chr(32) & Chr(32) & Chr(32) & Chr(32) & Chr(32) & Chr(32) & Chr(32) & Chr(32) & rsalumnos!apellido & ", " & rsalumnos!nombre
rsalumnos.MoveNext
Wend
rsalumnos.Close
Set rsalumnos = Nothing
End Sub
Pero cuando desde un formulario llamo a función abrir_rst(sql), me da el siguiente error: “No coinciden los datos en la expresión de criterios”.
Si alguien me pudiera dar una mano le estaria muy agradecido.
Saludos !!!!!