当前位置:首页教育技巧excel技巧excel数据库

pb怎么导出excel表格

2025-07-12 09:23:04


1.PB中如何将数据窗口中的数据导出成excel表,就是添加导出控件中的

用saveas()函数

例如,添加一个按钮,按钮的clicked()事件里写上(假设你的数据窗口叫dw_1):

if dw_1.rowcount() = 0 then return //--数据窗口里没有数据就直接返回,不响应操作

dw_1.saveas() //--弹出将数据窗口的数据保存成文件的提示窗口

这样就行了,当数据窗口有内容时,点那个按钮,就出现保存的提示窗口,可以选择保存的位置、文件类型、文件名称。

如果限制用户只能保存为excel,则可以这样:

dw_1.SaveAs("D:\abc.XLS", Excel!, TRUE) //--具体解释见下面

以下为书面引用:

====================================================================

dwcontrol.SaveAs ( { filename, saveastype, colheading } )

★dwcontrol:数据窗口控件名

★filename:可选参数,string类型,其值是用于保存数据窗口内容的文件的文件名。如果省略了filename参数或filename参数的值为空字符串(""),程序运行时,PowerBuilder将显示一个对话框,让用户输入或选择文件名。

★saveastype:可选参数,SaveAsType枚举数据类型,用于指定以何种方式保存数据窗口中的数据。

★colheading:可选参数,boolean类型,指示是否在文件的开头加上数据窗口列的标题。缺省值为TRUE,表示加列标题。该参数指定为FALSE时,表示不加列标题。

★★★ saveastype参数常用的有效取值为:

Clipboard!保存到剪贴板

CSV!以逗号分隔的形式保存数据

DIF! 保存为数据内部交换格式(Data Interchange Format)

Excel!保存为Microsoft Excel格式

HTMLTable!将数据保存为与数据窗口布局相对应的HTML格式

PSReport! 保存为Powersoft Report (PSR)格式

SYLK!保存为Microsoft Multiplan格式

Text! 缺省值,以每行用回车符结束、列之间使用Tab字符分隔的格式保存数据

2.PB中导出EXCEL请教

你的数据是否是在数据窗口中的?如果是数据窗口中,使用PB自带的SAVEAS功能非常快的。

举个小列子,比如有个按钮叫导出,导出窗口中dw_1数据窗口的数据

string ls_path, ls_file

integer li_rc, li_ret

li_rc = getfilesavename("选择文件",ls_path,ls_file,"XLS","Excel Files (*.xls),*.xls, *.*")

if li_rc <> 1 then return

dw_1.SaveAs(ls_path,Excel!,TRUE)

3.pb 导出excel

不用重谢。

累加到前面导出的后面关键是找到上次导出的最大行数。

具体代码如下:

OLEObject xlapp , xlsub //定义对象名

integer cnt

xlApp = Create OLEObject //创建对象

xlApp.ConnectToNewObject( "Excel.Sheet" ) //连接到EXCEL

xlApp.Application.Workbooks.Open("XXX.xls") //打开EXCEL文件

cnt=xlapp.Application.ActiveWorkbook.Worksheets[2].UsedRange.Rows.Count //获得最大行

integer numcols,numrows,c,r

numcols = dw_1.Object.DataWindow.Column.Count //获得当前数据窗口的最大列数

numrows = dw_1.RowCount() //获得当前数据窗口的最大行数

For c = 1 to numcols

For r = 1 to numrows

xlsub.cells[cnt+1,c] = dw_1.object.data[r,c] //从cnt+1行开始粘贴数据窗口的数据

Next

Next

4.pb中将select的结果导出excel

其实最简单的方法就是用数据窗口的saveas函数

你把你的sql做成数据窗口,最后数据窗口检索,再使用saveas函数

函数原型

nteger dwcontrol.SaveAs ( { string filename, saveastype saveastype, boolean colheading { , encoding encoding } } )

比如dw_1.saveas('data.xls',Excel!,true)

就是把dw_1的数据导出到data.xls文件里,true是保留数据字段名

相关信息


电脑版

【免责声明】本站信息来自网友投稿及网络整理,内容仅供参考,如果有错误请反馈给我们及时更正,对文中内容的真实性和完整性本站不提供任何保证,不承但任何责任。
版权所有:学窍知识网 Copyright © 2011-2026 www.at317.com All Rights Reserved .