当前位置: 主页 > PLC控制

wincc v7.3 做报表,MSFlexGrid控件导出到Excel,一闪就没了,也没生成Excel文件

winccv7.3做报表,MSFlexGrid控件导出到Excel,一闪就没了,也没生成Excel文件,各位大神帮我看一看。同样脚本代码,在XP系统,winccv7.0office2003就可以用,现在我的wincc版本v7.3,不管是把EXCEL装成2010或者是2003,都不能生成报表,我的电脑系统为win764位旗舰版。脚本如下
SubOnClick(ByValItem)

Dimm,i,j,n
DimobjExcelApp,objExcelBook,objExcelSheet

‘打开Excel模板
SetobjExcelApp=CreateObject("Excel.Application")
objExcelApp.Visible=True
objExcelApp.Workbooks.Open"D:\repoRT1\report.xls"
objExcelApp.Worksheets("sheet1").Activate
‘打开Excel模板
DimoliST
Setolist=ScreenItems("view1")

m=olist.Cols
i=olist.Rows

Forj=1Tom
Forn=1Toi
objExcelApp.Worksheets("Sheet1").cells(n,j).value=olist.TextMatrix(n-1,j-1)
Next
Next

Dimpatch,filename
filename=CStr(Year(Now))&CStr(Month(Now))&CStr(Day(Now))&CStr(Hour(Now))+CStr(Minute(Now))&CStr(Second(Now))
patch="D:\report1\report\"&filename&".xls"
objExcelApp.ActiveWorkbook.SaveASpatch
‘objExcelApp.Workbooks.Close
‘objExcelApp.Quit
SetobjExcelApp=Nothing
‘MsgBox"成功生成数据文件!"
item.Enabled=True

EndSub

问题补充:
我这段脚本是按照当前日期时间生成一个Excel文件,保存在"D:\report1\report文件夹下

图片说明:

wincc v7.3 做报表,MSFlexGrid控件导出到Excel,一闪就没了,也没生成Excel文件wincc v7.3 做报表,MSFlexGrid控件导出到Excel,一闪就没了,也没生成Excel文件 wincc v7.3 做报表,MSFlexGrid控件导出到Excel,一闪就没了,也没生成Excel文件wincc v7.3 做报表,MSFlexGrid控件导出到Excel,一闪就没了,也没生成Excel文件 wincc v7.3 做报表,MSFlexGrid控件导出到Excel,一闪就没了,也没生成Excel文件wincc v7.3 做报表,MSFlexGrid控件导出到Excel,一闪就没了,也没生成Excel文件 wincc v7.3 做报表,MSFlexGrid控件导出到Excel,一闪就没了,也没生成Excel文件b708c08690f987f7dd9fa6f6c60507fb

最佳答案

"D:\report1\report.xls"
这个文件有没有
然后msgboxmi一下看看有数没
补充:
嗯我能看明白,但是是先要打开一个模板的
就是上面那个表格,如果没有的话,肯定是空白的
你看看D:\report1\report.xls这个文件有没有,没有的话,你就新建一个,文件名和扩展名必须一样

提问者对于答案的评价:
恩目前问题解决了,真的是模板的问题非常感谢。大神还有一个问题想问您一下,为什么导出到EXCEL2003里面可以,但是导出到excel2010就不可以了,导出的数据在EXCEL2010表格内是空的,难道导出到EXCEL2010与EXCEL2003的脚本还有不同吗?

最佳答案作者回复:
基本上算没用过office2010软件,感觉反应很慢,个人使用2003就够了,所以一直在用2003….
而且2010好像激活挺麻烦,不好用就不用了么,可以换2013或者2016试试啊
还有2007以后表格文件默认的扩展名是xlsx的
记得在2013还是哪个版本测试过没问题的

  • 关注微信
上一篇:报警记录疑惑
下一篇:关于PQW监控

猜你喜欢

微信公众号