Hola rudolf
Mi manera de trabajar es la siguiente:
1. Entro en Excel y creo una planilla modelo, con todos los títulos, bordes, colores, tipos de letra, tamaños de letra, etc. que quiero. Es decir, hago un modelo, un armazón de la planilla.
2. En mi programa copio esa planilla modelo a otra planilla, que será la que verá el usuario.
3. Envío datos a cada una de las celdas.
4. Le muestro al usuario la planilla creada.
Para copiar la planilla modelo a otra planilla:
lcNombrePlanilla = "MiPlanilla.xls"
COPY FILE ModeloBalanceGeneral.xls to &lcNombrePlanilla
Para enviar datos a cada una de las celdas:
lcRutinaError = On("ERROR")
lnNumError = 0
on Error lnNumError = Error()
oExcel = GetObject(lcNombrePlanilla)
on Error &lcRutinaError
if lnNumError == 0 && Si se pudo abrir EXCEL
with oExcel.Application
.Visible = .F.
.Application.WorkBooks.Open(lcNombrePlanilla)
.Cells(5, 2).Value = "Visual FoxPro"
.Cells(7, 5).Value = 123456
.Visible = .T.
endwith
else
=MessageBox("No se pudo abrir EXCEL")
endif
Muchas veces la asignación de valores a las celdas está dentro de un ciclo do while o scan.
Si quieres cambiar el tipo de letra, tamaño de las letras, etc. de una celda, también puedes hacerlo:
.Cells(5, 2).Font.Name = "Arial"
.Cells(5, 2).Font.Size = 20
.Cells(5, 2).Font.Bold = .T.
Las tres líneas anteriores debes escribirlas dentro del with oExcel.Application.
También puedes cambiar los colores, las tramas, poner bordes, etc.
Pero hasta ahora no probé insertar un gráfico.
Saludos.
Walter.