vfp导出到excel程序代码

vfp导出到excel程序代码

ID:11252873

大小:33.00 KB

页数:3页

时间:2018-07-11

vfp导出到excel程序代码_第1页
vfp导出到excel程序代码_第2页
vfp导出到excel程序代码_第3页
资源描述:

《vfp导出到excel程序代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、VFP导出到Excel程序代码首先,我们新建一个表单,命名为daochu.scx。在表单上添加一个命令按钮,并将其Caption属性设置为“导出”。运行该表单时,单击导出,用户可以选择需要导出的dbf文件,成功导出成Excel文件并保存。“导出”命令按钮的Click事件的代码设置[2]为:cDbfFile=GETFILE("dbf")IFEMPTY(cDbfFile)RETURNENDIFUSE(cDbfFile)ALIASFoxTableIN0&&打开所选则的表并定义别名为FoxTableIFNOTUSED("FoxTa

2、ble")=MESSAGEBOX("打开表失败,程序将中止!",16,"Error")RETURNENDIFcExcelFile=PUTFILE("保存为(&N):",JUSTSTEM(cDbfFile)+".xls","xls")&&激活“另存为⋯”对话框,设置默认保存文件名。IFEMPTY(cExcelFile)CLOSEDATABASESALLRETURNENDIFSELECTFoxTableoExcelSheet=GETOBJECT("","Excel.Sheet")&&产生Excel对象IFNOTTYPE("oE

3、xcelSheet")="O"&&如果oExcelsheet不是对象型函数=MESSAGEBOX("Excel对象创建失败,程序将中止!",16,"Error")RETURNENDIFoExcelApp=oExcelSheet.ApplicationoExcelApp.Workbooks.Add()&&添加新工作簿oExcelApp.ActiveWindow.WindowState=2oSheet=oExcelApp.ActiveSheetnFldCount=AFIELDS(aFldList,"FoxTable")&&把当

4、前表的结构信息存放在一个数组中,并且返回表的字段数。FORi=1TOnFldCountoSheet.Cells(1,i).Value=aFldList[i,1]&&将表字段名复制到对应的单元格中ENDFORcRecc=STR(RECCOUNT("FoxTable"))&&返回当前表的记录数目SCAN&&扫描指针当前的位置WAITWINDOWALLTRIM(STR(RECNO()))+"/"+cReccNOWAITFORi=1TOnFldCountvValue=.NULL.IFAT(aFldList[i,2],"CDLMNF

5、IBYT")=0&&如果字段类型不是VFP的字段类型LOOPENDIFcFldName=aFldList[i,1]vValue=EVALUATE(cFldName)&&计算字符表达式的值并返回结果DOCASECASEaFldList[i,2]="C"&&字符/字符串vValue=TRIM(vValue)TRIM()返回删除全部后缀空格后的指定字符表达式CASEaFldList[i,2]="D"&&日期vValue=DTOC(vValue)CASEaFldList[i,2]="T"&&日期时间vValue=TTOC(vVal

6、ue)CASEINLIST(aFldList[i,2],"N","F","I","B","Y")&&数值CASEaFldList[i,2]="L"&&逻辑CASEaFldList[i,2]="M"&&备注型OTHERWISEvValue=.NULL.ENDCASEIFVARTYPE(vValue)="C"ANDEMPTY(vValue)LOOPENDIFIFNOTISNULL(vValue)&&判断vValue结果是否为NULL值oSheet.Cells(RECNO("FoxTable")+1,i).Value=vValu

7、e&&将值导出到对应单元格中ENDIFENDFORENDSCANcChrStr="ABCDEFGHIJKLMNOPQRSTUVWXYZ"FORi=1TOnFldCountcColumn=SUBSTR(cChrStr,INT((i-1)/26),1)+SUBSTR(cChrStr,IIF(MOD(i,26)=0,26,MOD(i,26)),1)oSheet.Columns(cColumn+":"+cColumn).ColumnWidth=12&&命名工作表列的名称并取得导入了数据的列的宽度IFaFldList[i,2]="M

8、"oSheet.Columns(cColumn+":"+cColumn).WrapText=.F.&&设置备注型型字段列不自动换行ENDIFENDFORoExcelApp.ActiveWorkbook.SaveAs(cExcelFile)&&设置另存为Excel文件oExcelApp.ActiveWor

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。