各位前辈请赐教!!!!请问如何将DATAWINDOW中的数据保存为EXCEL格式的文件???拜托了!!!!

benneng 2002-10-20 07:42:48
各位前辈!!!我用SAVEAS()函数将DATAWINDOW中的数据保存为EXCEL格式的文件。可是保存成功后。用EXCEL打开后发现数据窗口中的每一个列的标题却并没有带过来(就是DATAWINDOW对象中HEADER带中的标题)请问各位前辈有解决的办法吗?
...全文
70 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
balloonman2002 2002-10-21
  • 打赏
  • 举报
回复
我已在
http://expert.csdn.net/Expert/topic/1108/1108626.xml?temp=.6767847

中贴了详细的DDE和OLE操作的方法
jylzm 2002-10-21
  • 打赏
  • 举报
回复
SaveAsAscii()和SaveAs()都有很大的缺陷,其中最大的一个缺陷是不能存复合报表的内容。当然,以上的代码也存在同样的问题。不知道哪位师兄能提供一下存复合报表的方法。而且复合报表的表头文本可能是动态改变的哟!
fjzjr 2002-10-21
  • 打赏
  • 举报
回复
SaveAs()
comma7456 2002-10-21
  • 打赏
  • 举报
回复
SaveAsAscii()可以实现,不过pb6.5版本以上的才可以
pufan 2002-10-20
  • 打赏
  • 举报
回复
用ole或dde均可.
给你个例子.
//OLE to XCEL
integer result
OLEObject myoleobject
myoleobject = CREATE OLEObject
result = myoleobject.ConnectToNewObject("excel.application")
myoleobject.visible =true
myoleobject.Workbooks.Add
myoleobject.WorkSheets("sheet1").Activate
long ll_rowcount,ll_colcount
long i,j
ll_rowcount=dw_1.rowcount()+1
ll_colcount=long(dw_1.object.datawindow.column.count)
string ls_colname[],ls_value
for j = 1 to ll_colcount
ls_colname[j] = dw_1.describe("#"+string(j)+".name")+"_t"
ls_value = dw_1.describe(ls_colname[j]+".text")
myoleobject.activesheet.cells[1,j].value = ls_value
next
string ls_coltype
integer ii
for j=1 to ll_colcount
for i=2 to ll_rowcount
ls_coltype=dw_1.describe("#"+string(j)+".coltype")
ii=pos(ls_coltype,"char")
if ii>0 then
myoleobject.activesheet.cells(i,j).value="'"+dw_1.object.data[i -1 ,j]
else
myoleobject.activesheet.cells(i,j).value=dw_1.object.data[i -1 ,j]
end if
next
next
myoleobject.ActiveWorkBook.Save()
myoleobject.application.quit()
myoleobject.Disconnectobject()
Destroy myoleobject


609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧