Estoy queriendo formatear una dbf con tOleAuto para luego guardarla en un archivo Excel. Funciona bien, pero estoy teniendo un inconveniente. Basicamente no se cual es el método para agregar una fila.
Lo que quiero hacer, es agregar una fila al principio de todo para ahí poner un título, si lo hago de la manera que estoy haciendo funciona, pero no estoy agregando una fila, sino reemplazando la primer y segunda fila. Eso me trae el problema que pierdo el contenido del primer registro de la dbf ya que lo estoy pisando.
Alguien sabe como hacer lo que necesito?
Estoy haciendo lo siguiente:
Code: Select all
Function Ejemplo()
Local oExcel,oBook,oHoja
oExcel:= TOleAuto():New("Excel.Application")
oBook := oExcel:Workbooks:Open(REP_LOC+"INFOSAL.dbf")
oHoja := oExcel:Get( "ActiveSheet" )
oHoja:Range("A1:D1"):Font:bold := .T.
oHoja:Cells:Font:Name := "Arial"
oHoja:Cells:Font:Size := 10
oHoja:Cells( 1, 1 ):Value :="INFORME DE SALDOS"
oHoja:Range("B1:D1"):VALUE :=""
oHoja:Range("A1:D1"):Font:bold := .T.
oHoja:Range("A1:D1"):MergeCells:= .T.
oHoja:Columns("A:D"):AutoFit()
oHoja:Range("A1:D1"):Font:Color := RGB(255,255,255)
oHoja:Range("A1:D1"):Interior:Color := RGB(0,0,0)
oHoja:Range("A1:D1"):HorizontalAlignment:= -4108
oHoja:Range("A1:D1"):VerticalAlignment := -4108
oHoja:Range("A1:D1"):Font:Bold:= .T.
oHoja:Cells( 2, 1 ):Value :="Empresa"
oHoja:Cells( 2, 2 ):Value :="Cliente"
oHoja:Cells( 2, 3 ):Value :="Razón Social"
oHoja:Cells( 2, 4 ):Value :="Saldo"
oHoja:Range("A2:D2"):Font:Color := RGB(255,255,255)
oHoja:Range("A2:D2"):Interior:Color := RGB(0,0,0)
oHoja:Range("A2:D2"):Font:bold := .T.
oHoja:Range("A2:D2"):HorizontalAlignment:= -4108
oHoja:Range("A2:D2"):VerticalAlignment := -4108
oHoja:Columns("A:D"):AutoFit()
oHoja:Saveas(REP_LOC+"INFOSAL.XLSX")
oBook:= oExcel:Get( "WorkBooks" )
oBook:Open(REP_LOC+"INFOSAL.XLSX")
oHoja:= oExcel:Get( "ActiveSheet" )
oHoja:Cells( 1, 1 ):Select()
oExcel:Visible := .T.
oExcel:DisplayStatusBar := .T.
oExcel:DisplayFormulaBar:= .T.
oBook:End()
oExcel:DisplayAlerts :=.F.
oHoja :End()
oExcel:End()
RELEASE oHoja
RELEASE oExcel
Return nil
//
Saludos,