Como mejorar archivos creados en Excel
Posted: Tue Jan 15, 2013 3:12 pm
Buen dia para todos
Desearia saber mejorar la creacion de archivos en Excel, en general uso la creacion de Objeto de Excel como lo muesto mas abajo, todo sale bien y me crea el archivo sin problemas, incluso con mas de 100,000 registros , pero es una hoja sin ningun efecto y con columnas fijas, me gustaria saber como puedo hacer lo siguiente :
1. Darle un ancho determinado a la columna del Excel
2. Como darle formato con Dos decimales a las culumna con valor numerico:
3. Como ponerle bordes al contorno de Unrango de celdas
4. Cono darle color de Letra una determinada columna
5. Como cambiar el Tipo de Letra o el tamaño de letra
Exsiten otros metodos como crear archivos en Excel mas amigablemente,
Por lo que se la Clase TXls() no funciona bien para Office10 o con archivos muy extensos, se corta.
Gracias por sus futuros comentarios
Lubin
Desearia saber mejorar la creacion de archivos en Excel, en general uso la creacion de Objeto de Excel como lo muesto mas abajo, todo sale bien y me crea el archivo sin problemas, incluso con mas de 100,000 registros , pero es una hoja sin ningun efecto y con columnas fijas, me gustaria saber como puedo hacer lo siguiente :
1. Darle un ancho determinado a la columna del Excel
2. Como darle formato con Dos decimales a las culumna con valor numerico:
3. Como ponerle bordes al contorno de Unrango de celdas
4. Cono darle color de Letra una determinada columna
5. Como cambiar el Tipo de Letra o el tamaño de letra
Exsiten otros metodos como crear archivos en Excel mas amigablemente,
Por lo que se la Clase TXls() no funciona bien para Office10 o con archivos muy extensos, se corta.
Gracias por sus futuros comentarios
Lubin
- Code: Select all Expand view
oExcel:=CreateObject( "excel.application" )
oExcel:DisplayAlerts=.F.
oBook :=oExcel:Workbooks:Add()
oSheet:=oExcel:ActiveSheet
xls_nFormat := oBook:Get("FileFormat")
*Titulos de la Hoja
oSheet:Cells(1,01):Value = "MES "
oSheet:Cells(1,02):Value = "Nr.DOCUM"
oSheet:Cells(1,03):Value = "FECHA "
oSheet:Cells(1,04):Value = "IMPORTE"
oSheet:Cells(1,05):Value = "COBRADOR"
xls_cMemo :="" && Campo de memo para el Copy-Paste
xls_fila :=xls_fila+1 && La fila Inicial donde se cargan las lineas en bloque
xls_linpaste:=xls_fila && Ultima fila pegada
*Lopp del Detalle del reporte
DO WHILE .not. eof()
xls_vLinea:={}
* Cargo los valores a Pegar en el excel
aadd(xls_vLinea, CPAGO->MES )
aadd(xls_vLinea, CPAGO->NUMREGOPE )
aadd(xls_vLinea, CPAGO->FECCOM )
aadd(xls_vLinea, CPAGO->IMPORTE )
aadd(xls_vLinea, CPAGO->COBRADOR )
*Vamos contando cuantas filas van CARGADAS
xls_fila=xls_fila+1
*&& funcion que concatena y pega en la hoja de calculo
xls_cMemo := xls_Linea(oSheet,xls_cMemo,xls_vLinea,xls_fila,@xls_linpaste)
SKIP && paso al siguiguiente registro
ENDDO
xls_final(oSheet,xls_cMemo,xls_linpaste)
*Cierre de reporte
oBook:saveAS( xls_File, xls_nFormat )
oExcel:Quit()