PB中如何将数据窗口中的数据导出成excel表,就是添加导出控件中的代码该如何编写! 5
3个回答
展开全部
用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字符分隔的格式保存数据
例如,添加一个按钮,按钮的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字符分隔的格式保存数据
展开全部
dw.saveasascii()
把数据窗口的内容都导出去,包括标题等
把数据窗口的内容都导出去,包括标题等
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
BUTTON click事件
注意修改一下
OLEObject ole_object , ole_workbooks
ole_object = CREATE OLEObject
IF ole_object.ConnectToNewObject("Excel.Application") <> 0 THEN
MessageBox('OLE错误','OLE无法连接!')
return
END IF
ole_object.workbooks.add
ole_object.Visible = True
ole_workbooks = ole_object.Worksheets(1)
ole_workbooks.cells(1,1).value="姓名"
ole_workbooks.cells(1,2).value="性别"
long l_row
for l_row = 1 to dw_1.rowcount()
ole_workbooks.cells(l_row+1,1).value=dw_1.getitemstring(l_row,1)
ole_workbooks.cells(l_row+1,2).value=dw_1.getitemstring(l_row,2)
next
ole_workbooks.SaveAs ("d:\data.xls")
ole_object.quit()
Ole_Object.DisConnectObject()
Destroy Ole_Object
destroy ole_workbooks
注意修改一下
OLEObject ole_object , ole_workbooks
ole_object = CREATE OLEObject
IF ole_object.ConnectToNewObject("Excel.Application") <> 0 THEN
MessageBox('OLE错误','OLE无法连接!')
return
END IF
ole_object.workbooks.add
ole_object.Visible = True
ole_workbooks = ole_object.Worksheets(1)
ole_workbooks.cells(1,1).value="姓名"
ole_workbooks.cells(1,2).value="性别"
long l_row
for l_row = 1 to dw_1.rowcount()
ole_workbooks.cells(l_row+1,1).value=dw_1.getitemstring(l_row,1)
ole_workbooks.cells(l_row+1,2).value=dw_1.getitemstring(l_row,2)
next
ole_workbooks.SaveAs ("d:\data.xls")
ole_object.quit()
Ole_Object.DisConnectObject()
Destroy Ole_Object
destroy ole_workbooks
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询