Para exportar una tabla a Miscrosoft Excel, ejemplificaremos como proceder. Supongamos que tenemos la tabla productos con los campos codigo, descripcion, unidadmedida, lineaproducto. Para exportar los campos de la tabla de fox a las columnas de excel, usaremos un codigo como este:
**--GENERACION A MICROSOFT EXCEL
LError = ON('error')
ON ERROR xlapp = NULL
xlapp = GETOBJECT('Excel Application')
ON ERROR &LError
IF ISNULL(xlapp)
**--Generamos la aplicacion
xlapp = CREATEOBJECT('Excel.Application')
ENDIF
WITH xlapp
.VISIBLE = 'True'
.DisplayAlerts = 'False'
.Workbooks.ADD()
ENDWITH
xlsheet = xlapp.ActiveSheet
**--Formatos
WITH xlsheet
.COLUMNS("A:K").Font.Name = "MS Sans Serif"
.COLUMNS("A:K").Font.Size = 9
.COLUMNS("A:A").ColumnWidth = 7.00 &&Codigo
.COLUMNS("A:A").HorizontalAlignment = 3
.COLUMNS("B:B").ColumnWidth = 15.00 &&Descripcion
.COLUMNS("C:C").ColumnWidth = 11.00 &&Unidad Medida
.COLUMNS("C:C").HorizontalAlignment = 3
.COLUMNS("D:D").ColumnWidth = 11.00 &&Linea
.COLUMNS("D:D").HorizontalAlignment = 1
ENDWITH
Fila = 1
**--Titulo
xlsheet.Cells(Fila,1).Value = 'Reporte de Productos'
WITH xlsheet.Range("A1:A1")
.Font.Bold = 'True'
.HorizontalAlignment = 1
ENDWITH
Fila = Fila + 2
**--Titulos de columna
xlsheet.Cells(Fila,1).Value = "Codigo"
xlsheet.Cells(Fila,2).Value = "Descripcion"
xlsheet.Cells(Fila,3).Value = "Unidad/Medida"
xlsheet.Cells(Fila,4).Value = "Linea"
Fila = Fila + 1
WITH xlsheet.Range("A10:C10")
.Font.Bold = 'True'
ENDWITH
SELECT productos
**--Levantamos campos y reemplazamos en columnas de la hoja
SCAN
xlsheet.Cells(Fila,1).Value = productos.codigo
xlsheet.Cells(Fila,2).Value = productos.descripcion
xlsheet.Cells(Fila,3).Value = productos.unidaddemedida
xlsheet.Cells(Fila,4).Value = productos.linea
Fila = Fila + 1
ENDSCAN
**--Fin del codigo
Saludos. Espero sea de utilidad. Comentarios y sugerencias para mejorar son siempre bienvenidos.
Un abrazo! Desde Managua, Nicaragua.
Ravenn! :)
¿como exporto un campo tipo blob a excel?
ResponderEliminar