资源描述:
《PB数据窗口导出excel.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、PB数据窗口导出excel,修改第一行英文标题为中文标题,计算合计值分类:PB2013-11-0513:01712人阅读评论(0)收藏举报pb数据窗口导出excel中文标题计算合计值1.PB数据窗口导出excel利用dw.saveas(filename,Excel5!,true)方法先导出带英文标题的excel。intli_retstringls_filename,ls_pathnamebooleanlb_existifdw.rowcount()=0then messagebox("提示","无可保存的数据!") return;endifli_
2、ret=GetFileSaveName("保存文件",ls_pathname,ls_filename,"xls","Excel文件(.xls),.xls")ifli_ret=1then lb_exist=FileExists(ls_pathname) IFlb_existTHEN li_ret=MessageBox("保存",ls_pathname+"已经存在,是否覆盖?",Exclamation!,YesNo!) endif ifli_ret=1then li_ret=dw.saveas(ls_pathname,EXCEL5!,true)
3、//此处必须为true,后面要修改第一行。 ifli_ret=1then //修改标题头,计算合计 gf_set_title_sum(dw,ls_pathname) messagebox('提示','保存成功!') endif endifendif2.修改第一行英文标题为中文标题,计算合计值gf_set_title_sum(datawindowdw,stringvs_filename)函数如下:intli_retlongll_column,ll_num,ll_dwrowcountlongll_xlsrowcount//excel
4、的行数stringls_objtag[]//标题stringls_width[]//每列宽度stringls_obj,ls_valuestringls_objs[]inti,jStringls_english="ABCDEFGHIJKLMNOPQRSTUVWXYZ"stringls_colname//操作excelPointeroldpointerOLEObjectole_objectole_object=CREATEOLEObject//修改标题头,计算合计li_ret=ole_object.ConnectToNewObject("Excel
5、.Application")IFli_ret<>0THEN MessageBox('打开错误','无法连接EXCEL!是否已经安装了EXCEL?错误号:'+String(li_ret)) RETURNENDIFole_object.Visible=false //ole应用服务是否显示oldpointer=SetPointer(HourGlass!)ole_object.application.workbooks.open(vs_filename)//打开文件//获取标题ll_column=Long(dw.Object.DataWindow.
6、Column.Count)//取得字段总数i=0FORll_num=1TOll_column IFdw.DESCRIBE("#"+String(ll_num)+".Visible")="1"THEN//列标志为nun_Visible的不显示 i=i+1 ls_obj=dw.DESCRIBE("#"+String(ll_num)+".name")//字段名称的实际存储值 ls_objs[i]=ls_obj ls_objtag[i]=dw.DESCRIBE(ls_obj +"_t.text") //字段名称的显示值 ls_width[i] =dw
7、.DESCRIBE(ls_obj +'.width') //每列的宽度 ENDIFNEXT//开始修改标题头forj=1toupperbound(ls_objtag) ole_object.Cells(1,j).value=ls_objtag[j]next//标题一行居中ole_object.rows(1).HorizontalAlignment=3//居中//计算合计值ll_dwrowcount=dw.rowcount()//行数ll_xlsrowcount=ll_dwrowcount+1//除了合计之外的行数ole_object.cell
8、s(ll_xlsrowcount+1,1).value='合计'forj=2toll_column ls_colname=Mid(ls_english