Hola, necesito crear un archivo en excel con datos de una base de datos de Inventario, si lo crea pero al grabar marca error
cFile:="Prueba.xls"
objExcel = TOleAuto():New("Excel.Application")
objExcel:Visible := .T.
objExcel:Workbooks:Add()
objExcel:Sheets("Hoja1")
oHoja:=objExcel:ActiveSheet()
oHoja:Shapes:AddPicture("C:\Prueba\logo.jpg",.t.,.t.,10,5,88,80)
objExcel:Cells(1, 5):Font:bold := .T.
objExcel:Cells(1, 5):Font:Size := 14
objExcel:Cells(1, 5):Value := "ARTICULOS"
FOR nRen := 7 TO 56
objExcel:Rows(nRen):RowHeight:=12
NEXT
objExcel:Range("B7:C56"):Borders():LineStyle := 1
objExcel:Range("E7:F56"):Borders():LineStyle := 1
objExcel:Range("H7:I56"):Borders():LineStyle := 1
objExcel:Range("K7:L56"):Borders():LineStyle := 1
objExcel:Range("B7:L56"):Font:Size := 8
objExcel:Range("C7:C56"):NumberFormat := "###" // FORMATEAR CELDA NUMERICA
nRen:=7
nCol:=2
Select 1
Do while !Eof()
objExcel:Cells(nRen,nCol):Value := Alltrim(aInven->Descript)
nRen:=nRen +1
IF nRen=57
nRen:=7
nCol:=nCol + 3
ENDIF
Skip 1
Enddo
objExcel:Get("ActiveWorkBook"):SaveAs(cFile)
objExcel:WorkBooks:Close()
objExcel:Quit()
Se interrumpe y marca error en:
objExcel:Cells(nRen,nCol):Value := Alltrim(aInven->Descript)
SIn embargo si quito las ultimas 3 lineas:
objExcel:Get("ActiveWorkBook"):SaveAs(cFile)
objExcel:WorkBooks:Close()
objExcel:Quit()
Si crea correcto el archivo.
¿ Es por el tiempo que tarda en grabar las celdas ?
¿ como puedo "saber" que ya termino de llenar el archivo para poder grabarlo ?
No requiero ver en pantalla como se va llenando, solo necesito formar el archivo en una ruta específica
Gracias.