Exportar a excel desde Foxpro
Mando un poco del código
SELECT reorpr_art,codart_til,descri_art,IIF(forpag=='DV', -1,1) * cantid_til,almace_tic,crepro_art,sap_art,numserie_til,numcerti_til,fecfac_tic,IIF(forpag=='DV', -1,1) * pvpinicial as pvpinicial ,IIF(forpag=='DV', -1,1) * preeur_til ,IIF(forpag=='DV', -1,1) * ((cantid_til*preeur_til) - descuento),nombre_cli,nomepl_epl,talla_til,;
IIF(iva<>0,(descuento/(cantid_til*preeur_til)),thisform.ivacero()) as porcen, codcli_tic,IIF(condicional==.T.,"Si","No"),descata,forpag FROM cursorticket INTO CURSOR cursorticket2
_Vfp.DataToClip ('cursorticket2',,3) && Copiar el cursor a memoria
xlshoja4.Cells(5,1).Select && Seleccionar el Inicio de la Copia de los Datos
xlsapp.ActiveSheet.Paste() && Copiar los datos al Excel
_Cliptext ='' && Para liberar la memoria
** calcular numero de registros
SELECT count(codart_til) as numeroreg FROM cursorticket2 INTO CURSOR numeroregistros
numregistros=numeroregistros.numeroreg
USE IN numeroregistros
USE IN (SELECT('cursorticket2')) && Cerrar el cursor
*IF not eof()
xlsHoja4.Cells(1,1).select
xlsHoja4.Cells(1,1).font.size=8
thisform.ponrosita(xlsHoja4,xlsApp,"rosita")
xlsHoja4.Cells(1,1)="Descatalogados"
xlshoja4.cells(1,3)= "VENTAS TICKETS"
xlshoja4.cells(1,3).font.bold = .T.
xlshoja4.cells(1,3).HorizontalAlignment=3
xlsRango= xlshoja4.Range(xlshoja4.Cells(1,4), xlshoja4.Cells(1,7))
xlsRango.Select
xlsRango.MergeCells=.T.
xlshoja4.cells(1,4)=IIF(ALLTRIM(thisform.cmbBuscaProveedor.Value)=="",ALLTRIM(xlshoja4.cells(6,15).value) + ALLTRIM(thisform.cmbBuscaProveedor.Value)," " + ALLTRIM(thisform.cmbBuscaProveedor.Value))
xlshoja4.cells(1,4).font.size = 10
xlsRango.font.color= -16776961
xlshoja4.cells(1,4).font.bold=.T.
xlshoja4.select
xlsRango= xlshoja4.Range(xlshoja4.Cells(1,8), xlshoja4.Cells(1,11))
xlsRango.Select
xlsRango.MergeCells=.T.
*xlsapp.ActiveCell.FormulaR1C1 = "=NOW()"
xlshoja4.Cells(1,8)=DTOC(DATE())
xlsrango.font.size = 8
I=3
xlshoja4.cells(I,3)=" Desde : " + fechatituloD + " Hasta :" + fechatituloH
xlshoja4.cells(I,3).font.size=8
I=5
xlshoja4.cells(i,1)="Ref.orig"
xlshoja4.cells(i,2)="Código"
xlshoja4.cells(i,3)="Descripción"
xlshoja4.cells(i,4)="Cant."
xlshoja4.cells(i,5)="Alm."
xlshoja4.cells(i,6)="Prov."
xlshoja4.cells(i,7)="Sap"
xlshoja4.cells(i,8)="NºSerie"
xlshoja4.cells(i,9)="NºCertif."
xlshoja4.cells(I,10)="Fecha Vta"
xlshoja4.cells(i,11)="P.V.P."
xlshoja4.cells(i,12)="P.Venta"
xlshoja4.cells(i,13)="Vta.Neta"
xlshoja4.cells(i,14)="Cliente"
xlshoja4.cells(I,15)="Vend."
xlshoja4.cells(I,16)="Talla"
xlshoja4.cells(I,17)="%"
xlshoja4.cells(I,18)="CodCli"
xlshoja4.cells(I,19)="VtaCond"
xlshoja4.cells(I,20)="Descata."
xlsRango= xlshoja4.Range(xlshoja4.Cells(i,1), xlshoja4.Cells(I,20))
xlsrango.interior.colorIndex = 15
xlsrango.font.bold = .T.
xlsRango.Borders.LineStyle=1
xlsrango.font.size=8
xlsRango=xlshoja4.Range(xlshoja4.Cells(I+1,4), xlshoja4.Cells(I+1,3))
xlsRango.Select
* xlsapp.ActiveWindow.FreezePanes = .T.
LOCAL lnCampos as long
local guNumfac as long
* SELECT cursorticket
xlsRango=xlshoja4.Range(xlshoja4.Cells(5,1), xlshoja4.Cells(numregistros+5,9))
xlsRango.Borders.LineStyle=1
mesaño=substr(dtos(xlshoja4.cells(6,10).value),5,2) + "/"+ substr(dtos(xlshoja4.cells(6,10).value),1,4)
FOR k=1 to numregistros
I=I+1
IF (mesaño== substr(DTOS(xlshoja4.cells(i,10).value),5,2) + "/"+ substr(DTOS(xlshoja4.cells(i,10).value),1,4)) THEN
ELSE
xlsapp.Rows(i).Select
xlsapp.Selection.Insert ()
xlshoja4.cells(i,4)=sumcanti
xlshoja4.cells(i,4).font.bold = .T.
xlshoja4.cells(i,4).Borders.LineStyle=1
xlsRango= xlshoja4.Range(xlshoja4.Cells(i,1), xlshoja4.Cells(i,9))
xlsRango.select
xlshoja4.cells(i,11)=totmespvp
xlshoja4.cells(i,11).numberformat = "#,###,###,##0.00"
xlshoja4.cells(i,11).interior.colorIndex = 15
xlshoja4.cells(i,11).font.ThemeColor=1
xlshoja4.cells(i,11).font.TintAndShade = 0
xlshoja4.cells(i,11).font.bold=.T.
totpvp=totpvp+totmespvp
totcanti=totcanti+sumcanti
sumcanti=0
totmespvp=0
*i=i+1
With xlsApp.Selection.Interior
.Pattern = 1
.PatternColorIndex = -4105
.ThemeColor = 6
.TintAndShade = 0.599993896298105
ENDWITH
* mesaño=substr(dtos(xlshoja4.cells(i,9).value) + "/"+ substr(dtos(xlshoja4.cells(i,9).value),1,4)
mesaño=substr(dtos(xlshoja4.cells(i-1,10).value),5,2) + "/"+ substr(dtos(xlshoja4.cells(i-1,10).value),1,4)
xlshoja4.cells(i,1)="TOTAL MES :"
xlshoja4.cells(i,1).Font.Bold = .T.
xlshoja4.cells(i,3)= mesaño
xlshoja4.cells(i,3).font.color=-16776961
xlshoja4.cells(i,3).Font.Bold = .T.
xlsRango= xlshoja4.Range(xlshoja4.Cells(i,10), xlshoja4.Cells(i,20))
xlsrango.interior.colorIndex = 15
xlshoja4.cells(i,3).HorizontalAlignment=3
sumcanti=0
i=i+1
endif
mesaño=substr(dtos(xlshoja4.cells(i,10).value),5,2) + "/"+ substr(dtos(xlshoja4.cells(i,10).value),1,4)
IF ALLTRIM(xlshoja4.cells(i,21).value)=='DV' then
xlsRango= xlshoja4.Range(xlshoja4.Cells(i,1), xlshoja4.Cells(I,20))
xlsrango.font.color=-16776961
ENDIF
IF ALLTRIM(xlshoja4.cells(i,20).value)=="*" then
xlsRango= xlshoja4.Range(xlshoja4.Cells(i,1), xlshoja4.Cells(I,20))
xlsRango.interior.Color = 15987711
xlsRango.interior.PatternColorIndex = -4105
ENDIF
xlshoja4.cells(i,1).HorizontalAlignment=2
*xlshoja4.cells(i,4)=IIF(ALLTRIM(xlshoja4.cells(i,21).value)=='DV', -1,1) * xlshoja4.cells(i,4).value
xlshoja4.cells(i,5)=thisform.mandaalm(xlshoja4.cells(i,5).value)
* xlsRango=xlshoja4.Range(xlshoja4.Cells(i,1), xlshoja4.Cells(I,9))
* xlsRango.Borders.LineStyle=1
xlshoja4.cells(i,7).HorizontalAlignment=2
xlsHoja4.cells(i,9).numberformat = "@"
xlsHoja4.cells(i,9).NumberFormat = "00000"
xlshoja4.cells(i,9).HorizontalAlignment=2
xlshoja4.cells(i,8).HorizontalAlignment=2
xlshoja4.cells(i,10)=iif(xlshoja4.cells(i,10).value=={ / / },"",xlshoja4.cells(i,10).value)
xlshoja4.cells(i,11).numberformat = "#,###,###,##0.00"
xlshoja4.cells(i,12).numberformat = "#,###,###,##0.00"
xlshoja4.cells(i,13).numberformat = "#,###,###,##0.00"
xlshoja4.cells(i,17).numberformat = "#,###,###,##0.00"
sumcanti=sumcanti+ xlshoja4.cells(i,4).value
totneto=totneto + xlshoja4.cells(i,13).value
totmespvp=totmespvp+ xlshoja4.cells(i,11).value
NEXT k
xlshoja4.cells(i+1,4)=sumcanti
totcanti=totcanti+sumcanti