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
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