Error en DoCmd.RunSQL

Quiero ejecutar un sql con RunSql para obtener datos de una tabla (Solicitud) y me da error.
Esto es lo que tengo:
Private Sub Comando37_Click()
Dim mysql As String
NumSol = InputBox("Ingrese número de solicitud")
DoCmd.SetWarnings False
DoCmd.RunSQL (("SELECT * FROM Solicitud where Solicitud.IdSolicitud = ") & NumSol)
 DoCmd.SetWarnings True
Me da el siguiente error en RunSql: La acción EjecutarSql requiere como argumento una instrucción SQL.
También probé con esto:
mysql = "SELECT * FROM Solicitud where Solicitud.IdSolicitud = " & NumSol
DoCmd. RunSQL mysql
Pero me da el mismo error.
También probé el sql quitándole el where, dejando "SELECT * FROM Solicitud" pero sigue dando lo mismo.
Por favor si alguien puede decirme si es un problema de sintaxis o me falta definir algo, o lo que sea.

1 respuesta

Respuesta
1
Estás intentando ejecutar una consulta de selección dentro de código en Access, y este tipo de consultas no pueden ejecutarse de esta manera. Es decir, que lo que intentas hacer no se puede hacer.
Tendrías que cambiar la sistemática y utilizar el objeto Consultas. También podría hacerse a través de código, pero es algo un poco más complicado.
Por cierto, la sintaxis correcta para la Sql es la que tú has escrito como:
mysql = "SELECT * FROM Solicitud where Solicitud.IdSolicitud = " & NumSol
Si no sabes cómo hacerlo a través de una consulta "normal" en Access o a través de código me lo comentas y te lo explico.
Un saludo,
... http://neckkito.eu5.org/ ...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas