Como pasar pasar un parámetro a una consulta de access desde excel.
Solicito a quien pueda ayudarme, que me indique como pasar un parámetro desde excel a una consulta de access ; la consulta que se genera en access PIDE el parámetro: el nit por ejemplo.
Dim MyDatabase As DAO.database
'MyDatabase: Expone la base de datos de Access por medio de la DAO Object Library
Dim MyQueryDef As DAO.QueryDef
'MyQueryDef: Sirve como una variable de almacenamiento para contener la consulta objetivo.
Dim MyRecordset As DAO.Recordset
'MyRecordset: Guarda los resultados de la base de datos.
Dim i As Integer
'i: Se utiliza para añadir títulos a las columnas
'Paso 2: Identificar la base de datos y la consulta.
'Se identifica la base de datos que contiene la consulta requerida así como la consulta que correrá el programa.
'Al haberle asignado a QueryDef una consulta le permite al usuario abrir la consulta en la memoria.
'Nótese que para ejecutar la macro se debe colocar la ruta correspondiente del archivo en access para el cual se desea obtener la consulta, así como también el nombre de la consulta.
Set MyDatabase = DBEngine.OpenDatabase _
("E:\CUENTASXC\CTASXC.accdb")
Set MyQueryDef = MyDatabase.QueryDefs("PAGOS Consulta")
'Paso 3: Abrir la consulta. Los resultados de la consulta son archivadas dentro de MyRecordset.
'Una vez que se encuentren en esa variable, se pueden exportar a Excel
Set MyRecordset = MyQueryDef.OpenRecordset
'Paso 4: Deja en blanco la hoja de calculo.
Sheets("HOJA1").Select
ActiveSheet.Range("A6:K1000000").ClearContents
'Paso 5: Se copian los datos a Excel, para este caso a la celda "A6"
ActiveSheet.Range("A7").CopyFromRecordset MyRecordset
'Paso 6: Añadir títulos a las columnas
For i = 1 To MyRecordset.Fields.Count
ActiveSheet.Cells(6, i).Value = MyRecordset.Fields(i - 1).Name
Next i
End Sub