Ejecución de consulta Access VBA

spartaboom Mensajes publicados 14 Estado Miembro -  
 Tessel75 -
Hola,
estoy intentando ejecutar una consulta ya registrada en mi base Access llamada "Moins_Values_derives_Coefficientes" y quiero lanzar la ejecución de esta consulta pasando el nombre de la consulta directamente en mi código VBA (sin reescribir la consulta SQL). ¿Es posible?

a continuación mi código que no funciona.
DoCmd.OpenQuery "Moins_Values_derives_Coefficientes
ruta = "ruta de mi BD" , no había añadido la instrucción DoCmd.OpenQuery "Moins_Values_derives_Coefficientes" en mi código, tampoco funciona
gracias por vuestra ayuda

Dim db As DAO.Database
Dim q As QueryDef
Dim rs As DAO.Recordset

Set db = DAO.OpenDatabase(ruta, False, False)

Set q = db.QueryDefs("Moins_Values_derives_Coefficientes")
Set rs = db.OpenRecordset(q.Sql)

End Sub

he buscado por todas partes pero no he encontrado mucho (soy principiante en VBA)

4 respuestas

  1. Tessel75
     
    Hola,
    Nunca he tenido problemas con la escritura:
    DoCmd.OpenQuery "[Blabblabla]"

    Ten cuidado con todas tus comillas, te falta una al final de la escritura que nos presentas, y Access normalmente no le gustan mucho los espacios en los nombres de objetos, y quizá sea innecesario tener un nombre tan largo y complicado como "Moins_Values_derives_Coefficientes", "MoinsValDerivesCoeff" habría hecho el trabajo igual de bien sin arriesgarse a un error de escritura.
    Buena continuación
    3
  2. spartaboom Mensajes publicados 14 Estado Miembro
     
    Cuando ejecuto mi código a continuación, aparece un error:
    Error de ejecución '424': Objeto requerido
    destacando en amarillo la línea "Set q = CurrentDb.QueryDefs("MAXhistovl")"
    Gracias por tu respuesta

    Sub bal()

    Dim db As DAO.Database
    Dim q As DAO.QueryDef
    Dim rs As DAO.Recordset

    Set q = CurrentDb.QueryDefs("MAXhistovl")
    Set q = Nothing

    End Sub
    0
  3. Tessel75
     
    Hola,
    ¿Qué es "Error 424". Tus interlocutores no son necesariamente listados ambulantes de errores enumerados por Access. Además, como tampoco dices qué es "MAXhistovl". De todas formas, repetition: Atención a los errores de escritura. Lo más probable es que exista.
    0