Como hago para exportar datos desde visual fox pro a e

Cual es el error en este codigo que me impide exportar los datos a excel?
es de un programa q uso en el trabajo y antes me hacia la exportacion de datos pero me falla no le entiendo mucho de programacion pero este es el codigo del icono en el que presionaba para q me exporte los datos..
local xcontador,xcliente,xnomcli
sele auxcta
xcliente = cliente
count to xcontador
sele cli_cta
set order to codigo
xnomcli = nombre
if xcontador > 0
local Fila
wait'Espere Un Momento Exportando Datos' window nowait
_screen.mousepointer=14
TmpSheet=GetObject('','Excel.Sheet')
XLApp=TmpSheet.Application
XLApp.visible=.T.
XLApp.workbooks.add()
XLSheet=XLApp.ActiveSheet
XLSheet.Cells(1,1)= alltrim(xNombreEmpresa)
XLSheet.Cells(1,1).font.bold=.T.
XLSheet.Cells(1,1).font.size="16"
XLSheet.Cells(1,1).font.name="Comic Sans MS"
XLSheet.Cells(2,1)="Detalle de Cuenta Corriente de " + alltrim(xnomcli) + "- Saldo Anterior = " + alltrim(str(thisform.txtSaldoAnterior.value,12,2))
XLSheet.Cells(2,1).font.bold=.T.
XLSheet.Cells(2,1).font.size="12"
XLSheet.Cells(2,1).font.name="Arial"
XLSheet.Cells(3,2)="Id.Vta"
XLSheet.Cells(3,2).font.bold=.T.
XLSheet.Cells(3,2).font.size="11"
XLSheet.Cells(3,2).font.name="Arial"
XLSheet.Cells(3,3)="Fecha"
XLSheet.Cells(3,3).font.bold=.T.
XLSheet.Cells(3,3).font.size="11"
XLSheet.Cells(3,3).font.name="Arial"
XLSheet.Cells(3,4)="Caja"
XLSheet.Cells(3,4).font.bold=.T.
XLSheet.Cells(3,4).font.size="11"
XLSheet.Cells(3,4).font.name="Arial"
XLSheet.Cells(3,5)="Articulo"
XLSheet.Cells(3,5).font.bold=.T.
XLSheet.Cells(3,5).font.size="11"
XLSheet.Cells(3,5).font.name="Arial"
XLSheet.Cells(3,6)="Cant."
XLSheet.Cells(3,6).font.bold=.T.
XLSheet.Cells(3,6).font.size="11"
XLSheet.Cells(3,6).font.name="Arial"
XLSheet.Cells(3,7)="$ Unit."
XLSheet.Cells(3,7).font.bold=.T.
XLSheet.Cells(3,7).font.size="11"
XLSheet.Cells(3,7).font.name="Arial"
XLSheet.Cells(3,8)="$ Total"
XLSheet.Cells(3,8).font.bold=.T.
XLSheet.Cells(3,8).font.size="11"
XLSheet.Cells(3,8).font.name="Arial"
XLSheet.Cells(3,9)="Debe"
XLSheet.Cells(3,9).font.bold=.T.
XLSheet.Cells(3,9).font.size="11"
XLSheet.Cells(3,9).font.name="Arial"
XLSheet.Cells(3,10)="Haber"
XLSheet.Cells(3,10).font.bold=.T.
XLSheet.Cells(3,10).font.size="11"
XLSheet.Cells(3,10).font.name="Arial"
XLSheet.Cells(3,11)="Saldo"
XLSheet.Cells(3,11).font.bold=.T.
XLSheet.Cells(3,11).font.size="11"
XLSheet.Cells(3,11).font.name="Arial"
Fila=3
local xid_vta,xcodigo,xfecha,xterminal,xcodigoArt,xdebe,xhaber,xsaldo,xrecibo
xdebe = thisform.txtSaldoAnterior.value
Xhaber = 0
xsaldo = thisform.txtSaldoAnterior.value
sele auxcta
go top
scan
   xid_vta = id_vta
   xfecha = fecha
   xterminal = terminal
   xrecibo = recibo
   ************
if id_vta = 0
Fila=Fila+1
XLSheet.Cells(Fila,1)="R"
XLSheet.Cells(Fila,1).font.bold=.T.
XLSheet.Cells(Fila,2)=alltrim(str(xrecibo))
XLSheet.Cells(Fila,2).font.bold=.T.
XLSheet.Cells(Fila,3)=dtoc(xfecha)
XLSheet.Cells(Fila,3).font.bold=.T.
XLSheet.Cells(Fila,4)=alltrim(str(xterminal))
XLSheet.Cells(Fila,4).font.bold=.T.
XLSheet.Cells(Fila,5)= "Pago de Cta. Cte."
XLSheet.Cells(Fila,5).font.bold=.T.
XLSheet.Cells(Fila,10)=alltrim(str(haber,12,2))
XLSheet.Cells(Fila,10).font.bold=.T.
xhaber = xhaber + haber
xsaldo = xdebe - xhaber
XLSheet.Cells(Fila,11)=alltrim(str(xsaldo,12,2))
else
   sele venta
   go top
   scan for id_vta = xid_vta
   Fila=Fila+1
  XLSheet.Cells(Fila,2)=alltrim(str(xid_vta))
XLSheet.Cells(Fila,3)=dtoc(xfecha)
XLSheet.Cells(Fila,4)=alltrim(str(xterminal))
   xcodigoArt = codigo
   sele articulos
   set order to codigo
   seek(xcodigoArt)
   if found()
  XLSheet.Cells(Fila,5)=alltrim(nombre)
   endif
   sele venta
   XLSheet.Cells(Fila,6)=alltrim(str(cantidad))
   XLSheet.Cells(Fila,7)=alltrim(str(unitario,12,2))
   XLSheet.Cells(Fila,8)=alltrim(str(total,12,2))
   xdebe = xdebe + total
   xsaldo = xdebe - xhaber
   XLSheet.Cells(Fila,9)=alltrim(str(xdebe,12,2))
   XLSheet.Cells(Fila,11)=alltrim(str(xsaldo,12,2))
   endscan
   sele auxcta
endif
endscan
XLSheet.Columns("A:A").ColumnWidth = 2
XLSheet.Columns("B:B").EntireColumn.AutoFit
XLSheet.Columns("C:C").EntireColumn.AutoFit
XLSheet.Columns("D:D").EntireColumn.AutoFit
XLSheet.Columns("E:E").EntireColumn.AutoFit
XLSheet.Columns("F:F").EntireColumn.AutoFit
XLSheet.Columns("G:G").EntireColumn.AutoFit
XLSheet.Columns("H:H").EntireColumn.AutoFit
XLSheet.Columns("I:I").EntireColumn.AutoFit
XLSheet.Columns("J:J").EntireColumn.AutoFit
XLSheet.Columns("K:K").EntireColumn.AutoFit
_screen.mousepointer=0
endif
desde ya muchas gracias espero tu respuesta atentamente

1 respuesta

Respuesta
1
Me parece que el error esta al inicio prueba con
XLApp=CREATEOBJECT("Excel.application")
XLApp.Workbooks.Add()
XLApp.visible=.T.
En lugar de 
TmpSheet=GetObject('','Excel.Sheet') 
XLApp=TmpSheet.Application 
XLApp.visible=.T. 
XLApp.workbooks.add() 
XLSheet=XLApp.ActiveSheet
Tambien verifica si tienes la aplicacion (excel) en tu maquina, o si me puedes indicar el tipo de error que aparece para darte una mejor ayuda
gracias por contestar..si tengo instalado el office 2003 es el q tiene la pc y el error q me aparece es el siguiente - (OLE error code 0x80004002: unknow com status code.) -despues en la ventana me aparece cancel ignore help ..si presiono en ignore me aparece ( Alias 'TMPSHEET' is not found ) si presiono de nuevo ( Object XLAPP is not found) y si le doy cancel se cierra todo...probe como me dijiste pero no paso nada me salio de nuevo ese error
Prueba creando un prg con lo siguiente
XLApp=CREATEOBJECT("Excel.application")
XLApp.Workbooks.Add()
XLApp.visible=.T.
Luego ejecutalo, esto simplemente abre una hoja excel, si no funciona el problema es la maquina, reinstala el VFP9
Tambien prueba este ejemplo en otra maquina, si funciona, vas a tener que formatear la maquina que te da problemas
en mi pc hizo bien la exportacion de los datos me los paso a todos pero no solo de la cuenta corriente de la cual quiero los datos sino tambien de todas las ventas que hizo cuando termina de hacer todo eso me aparece el error de nuevo..hay alguna base de datos a la que valla todo eso verdad?hay alguna posibilidad q ahy sea el error?si podes pasame tu correo para que te mande el programa en un comprimido para q lo veas y bue asi capaz te sea mas facil...desde ya gracias..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas