una - importar datos de excel a access 2013
Exportar tablas de MS Access a través de VBA a una hoja de cálculo de Excel en el mismo directorio (3)
Tengo dos tablas en mi base de datos de acceso que quiero poder exportar para sobresalir .
Puedo hacerlo abriendo la tabla y luego haciendo Archivo-> Exportar ... y luego seleccionando el formato y escribiendo el nombre del archivo.
Sin embargo, de esta manera, el usuario realmente tiene que escribir el nombre para que haya espacio para un nombre incorrecto del archivo o para guardarlo en el formato incorrecto o en la ubicación incorrecta. Además, las dos tablas deben exportarse a dos libros de trabajo separados.
Lo que quiero poder hacer es hacer un botón en un formulario que exporte automáticamente una tabla a una hoja de cálculo y el otro a otra hoja de cálculo , ambas en el mismo libro de Excel .
Si no es posible ponerlos en el mismo libro, está bien. Solo quiero que se exporten automáticamente al mismo directorio donde está guardada mi base de datos de acceso.
Si sabe cómo hacerlo, un beneficio adicional podría ser personalizar el nombre para incluir la fecha. De esa manera el directorio también tendría exportaciones históricas. ¿Algún consejo?
Lawrence te ha dado una buena respuesta. Pero si desea un mayor control sobre lo que se exporta a donde en Excel vea Módulos: Automatización de ejemplo de Excel - celda por celda que es lenta y Módulos: Transferencia de registros a Excel con automatización Puede hacer cosas como exportar el conjunto de registros comenzando en la fila 2 y inserte texto personalizado en la fila 1. Además de cualquier formato personalizado requerido.
Para las personas que encuentran esto a través de los motores de búsqueda, no necesita VBA. Tu puedes sólo:
1.) select the query or table with your mouse
2.) click export data from the ribbon
3.) click excel from the export subgroup
4.) follow the wizard to select the output file and location.
Puede usar VBA para exportar una tabla de base de datos de Access como una hoja de trabajo en un libro de Excel.
Para obtener la ruta de acceso de la base de datos de Access, use la propiedad CurrentProject.Path
.
Para nombrar el archivo de Excel Workbook con la fecha actual, use el método de Format(Date, "yyyyMMdd")
.
Finalmente, para exportar la tabla como una DoCmd.TransferSpreadsheet
trabajo, use el método DoCmd.TransferSpreadsheet
.
Ejemplo:
Dim outputFileName As String
outputFileName = CurrentProject.Path & "/Export_" & Format(Date, "yyyyMMdd") & ".xls"
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Table1", outputFileName , True
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Table2", outputFileName , True
Esto generará tanto Table1 como Table2 en el mismo Libro de trabajo.
HTH