de una tabla a varias hojas de un libro excel |
Responder |
Autor | |
carlosbelmonte
Asiduo Unido: 06/Octubre/2010 Localización: España Estado: Sin conexión Puntos: 466 |
Tema: de una tabla a varias hojas de un libro excel Enviado: 23/Julio/2020 a las 17:38 |
hola a todos, tengo una tabla T_Articulos con tres campos :
CodigoArticulo NombreArticulo NombreFamilia Y necesito exportar a un archivo excel con varias hojas dependiendo de la familia, por ejemplo que todos los artìculos de la familia COCHES vaya a una hoja con el nombre COCHES del excel, que la otra familia MOTOCICLETAS vaya a otra hoja del mismo excel con el nombre MOTOCICLETAS y así sucesivamente. Alguien lo ha hecho o me puede ayudar ? muchas gracias
|
|
emiliove
Administrador Unido: 16/Junio/2009 Localización: Mexico Estado: Sin conexión Puntos: 5694 |
Enviado: 23/Julio/2020 a las 20:11 |
Hola carlosbelmonte Y que has hecho, o donde te atoraste, ya miraste los ejemplos del Maestro Emilio Sancha tiene varios de Access con Excel. Saludos.
|
|
carlosbelmonte
Asiduo Unido: 06/Octubre/2010 Localización: España Estado: Sin conexión Puntos: 466 |
Enviado: 23/Julio/2020 a las 22:04 |
No he visto los ejemplos de Emilio en este sentido, donde se pueden ver ?
|
|
carlosbelmonte
Asiduo Unido: 06/Octubre/2010 Localización: España Estado: Sin conexión Puntos: 466 |
Enviado: 24/Julio/2020 a las 12:16 |
Finalmente lo he logrado jugando con un recordset y en un momento dado creando hojas en el mismo archivo excel dependiendo de la familia :
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel8, "T_ArticulosTEMP", RutaArchivo, , RstOrigenHojas!Familia El problema es que la hoja de calculo se genera sin formato en los encabezados, sin ajustar columnas, etc... me podríais ayudar para saber si podría cambiar el formato (fuente, ajuste automatico de columnas, etc...) de las celdas de excel desde access ? gracias
|
|
emiliove
Administrador Unido: 16/Junio/2009 Localización: Mexico Estado: Sin conexión Puntos: 5694 |
Enviado: 24/Julio/2020 a las 15:22 |
Por Automatización lo haces sin problema, Xavi a participado en varios hilos sobre Access/Excel hace poco tiempo, los miraste ya, El maestro emilio Sancha habla sobre Automatización http://www.mvp-access.es/emilio/como/Automatizacion.pdf Saludos.
|
|
carlosbelmonte
Asiduo Unido: 06/Octubre/2010 Localización: España Estado: Sin conexión Puntos: 466 |
Enviado: 24/Julio/2020 a las 19:08 |
Para hacer que las columnas de la hoja con nombre : 170402 tenga las columnas autoajustadas he hecho lo siguiente : (pero no me me ajusta el tamaño de esas columnas)
Dim xls As Excel.Application Dim strArchivo As String strArchivo = "C:\Trabajo\Memoria_01012001hasta01012021.xls" ' creo una instancia a Excel Set xls = CreateObject("Excel.Application") xls.Workbooks.Open (strArchivo) ' activo la 170402 xls.Worksheets("170402").Activate 'autoajustar columnas de la A a la I Worksheets("170402").Range("A:I").Columns.AutoFit 'esta es otra opción pero que tampoco me funciona : xls.Columns("A:I").EntireColumn.AutoFit ' cierro Excel, para evitar que me pregunte si quiero guardar, le engaño diciendo que ya lo está xls.ActiveWorkbook.Saved = True xls.Application.Quit Set xls = Nothing |
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14720 |
Enviado: 24/Julio/2020 a las 20:05 |
Un consejo: utiliza la grabadora de macros de Excel para realizar la acción. Después analiza el código para ver que es cada una de las líneas. Una vez entendido, podrás aplicarlo a la automatizacion anteponiendo la variable objeto que representa el Excel. En tu caso concreto creo que es así: Un saludo
|
|
carlosbelmonte
Asiduo Unido: 06/Octubre/2010 Localización: España Estado: Sin conexión Puntos: 466 |
Enviado: 24/Julio/2020 a las 20:51 |
Gracias Xavi,
he puesto en el codigo que antes he puesto lo que me dices : xls.Worksheets("170402").Cells.EntireColumn.AutoFit pero no me hace nada, se queda igual.
|
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14720 |
Enviado: 24/Julio/2020 a las 22:38 |
¿Has probado con la grabadora de macros?
|
|
carlosbelmonte
Asiduo Unido: 06/Octubre/2010 Localización: España Estado: Sin conexión Puntos: 466 |
Enviado: 25/Julio/2020 a las 11:46 |
así se ajustan automaticamente las columnas de la A a la H : With miHoja
.Columns("A:A").EntireColumn.AutoFit .Columns("B:B").EntireColumn.AutoFit .Columns("C:C").EntireColumn.AutoFit .Columns("D:D").EntireColumn.AutoFit .Columns("E:E").EntireColumn.AutoFit .Columns("F:F").EntireColumn.AutoFit .Columns("G:G").EntireColumn.AutoFit .Columns("H:H").EntireColumn.AutoFit End With Lo que no logro es insertar X filas a partir de la fila Y , hasta ahora estoy probando así pero no se que criterío sigue para insertar filas y apartir de que fila. .Rows(X:Y).Insert Shift:=xlDown |
|
carlosbelmonte
Asiduo Unido: 06/Octubre/2010 Localización: España Estado: Sin conexión Puntos: 466 |
Enviado: 28/Julio/2020 a las 21:41 |
para insertar una fila apartir de la fila 4 sería así :
.Rows("4:4").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove Y así quedaría el hilo cerrado y solucionado, muchas gracias a todos |
|
Responder | |
Tweet
|
Ir al foro | Permisos de foro Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |