VFP 导出到excel

xiaoxiao2021-02-28  78

SELECT * FROM tmp销量  INTO CURSOR tmp_Rpt lc商品代码=ALLTRIM(tmp_Rpt.商品代码) SELECT tmp_Rpt GO TOP  tmpXLS=pcTmpPath+'tmp销量 '+Dtos(Date()); +'.XLS' tmpXLS=PUTFILE('',tmpXLS,'XLS') IF EMPTY(tmpXLS) RETURN ENDIF WAIT WINDOW '建立Excel文件 ......' NOWAIT IsCopyOK=.T. TRY SELECT tmp_Rpt COPY To '&tmpXLS' FIELDS EXCEPT ID TYPE XL5 CATCH IsCopyOK=.F. ENDTRY IF IsCopyOK=.F. MESSAGEBOX('建立Excel文件失败!'+CHR(13)+MESSAGE(),16,'系统信息') RETURN ENDIF tmpIsOK=.T. TRY tmpOLE=Createobject('Excel.Application')   CATCH tmpIsOK=.F. ENDTRY IF tmpIsOK=.F. WAIT CLEAR MESSAGEBOX("调用Microsoft Excel程序失败!",16,"系统信息") RETURN ENDIF WITH tmpOLE .Workbooks.Open(tmpXLS) .Selection.HorizontalAlignment=3   *.Cells.EntireColumn.AutoFits ENDWITH tmpOLE.ActiveSheet.name='Sheet1' SELECT tmp_Rpt lc商品代码=ALLTRIM(tmp_Rpt.商品代码) tmpOLE.Cells(2,1).value=lc商品代码 ln记录=RECCOUNT("tmp_Rpt")+1 lc列号='A'+ALLTRIM(STR(ln记录)) SELECT tmp_Rpt GO TOP lnI=0 SCAN WAIT WINDOW ' 正在导出文件,请稍后!......'+ALLTRIM(STR(RECNO()))+'/'+ALLTRIM(STR(RECCOUNT())) NOWAIT &&Please wait lnI=lnI+1 lcRec=ALLTRIM(STR(RECNO()+1))  && 因为表有抬头,所以要从第3行开始加入数据 lcCmd='tmpOLE.Rows("'+lcRec+':'+lcRec+'").RowHeight=30' && OLE对象中.rows(列数) .rowheight列的高度为50 &lcCmd  ENDSCAN  ld2=DATETIME() tmpOLE.ActiveSheet.Range('A:CA').WrapText=.T. tmpOLE.Range("A:DR").HorizontalAlignment =3 &&水平(1-默认、2-靠左、3-居中、4-靠右、5-填充、6=两端对齐、7=跨列居中、8=分散对齐) tmpOLE.Range("A:DR").VerticalAlignment =2 &&垂直(1=靠上、2=居中、3=靠下、4=两端对齐、5=分散对齐) tmpOLE.ActiveWorkbook.Saved=.T. tmpOLE.Visible=.T. SELECT tmp_Rpt USE 
转载请注明原文地址: https://www.6miu.com/read-2628396.html

最新回复(0)