Exportar consulta de Access a Excel nombrando el archivo con el valor de un campo

Tengo esta rutina que me exporta a excel los resultados de una consulta. Pero no he logrado que el nombre del archivo incluya el valor del campo ID, valor único para todos los registros de la consulta (la ruta es fija). Soy usuario nuevo de Access así que no he entendido las respuestas que han dado a caso similares. Agradeceré su ayuda.

Sub ExportaDatos ()

On Error GoTo ExportaDatos _Err

DoCmd.SetWarnings False

DoCmd.OutputTo acOutputQuery, "Busq4", "ExcelWorkbook(*.xlsx)", "C:\Documents\ datos.xlsx", False, "", , acExportQualityPrint

DoCmd.SetWarnings True

ExportaDatos _Exit:

   Exit Sub

ExportaDatos _Err:

    MsgBox Error$

    Resume ExportaDatos_Exit

End Sub

1 respuesta

Respuesta
2

Prueba así:

DoCmd.OutputTo acOutputQuery, "Busq4", "ExcelWorkbook(*.xlsx)", "C:\Documents\ datos" & DLookUp("ID","Busq4) & ".xlsx", False, "", , acExportQualityPrint

o si el código lo tienes en un formulario con el ID que tiene la consulta:

DoCmd.OutputTo acOutputQuery, "Busq4", "ExcelWorkbook(*.xlsx)", "C:\Documents\ datos" & Me.ID & ".xlsx", False, "", , acExportQualityPrint

Con cualquiera de esas formas, la hoja de excel, si el id es el 1, te quedaría con el nombre datos1.xlsx

Un saludo


Excelente. Muchísimas gracias. Funcionó perfectamente la primera opción que es la que necesitaba (solo me costó encontrar que faltaba terminar con una " en Busq4). 

DoCmd.OutputTo acOutputQuery, "Busq4", "ExcelWorkbook(*.xlsx)", "C:\Documents\ datos" & DLookUp("ID","Busq4") & ".xlsx", False, "", , acExportQualityPrint

Je je, sí, fallo mío al teclear...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas