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

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

Dim m,i,j,n
Dim objExcelApp,objExcelBook,objExcelSheet

‘打开Excel模板
Set objExcelApp = CreateObject("Excel.Application")
 objExcelApp.Visible = True
 objExcelApp.Workbooks.Open "D:\report1\report.xls"
 objExcelApp.Worksheets("sheet1").Activate
‘打开Excel模板
Dim olist
Set olist=ScreenItems("view1")

m=olist.Cols 
i=olist.Rows 

For j = 1 To m
 For n = 1 To i 
  objExcelApp.Worksheets("Sheet1").cells(n,j).value= olist.TextMatrix (n-1,j-1) 
 Next
Next
  
Dim patch,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.SaveAs patch
‘ objExcelApp.Workbooks.Close
‘ objExcelApp.Quit
 Set objExcelApp= Nothing
‘ MsgBox "成功生成数据文件!"
 item.Enabled = True

End Sub

问题补充:
我这段脚本是按照当前日期时间生成一个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文件   

最佳答案

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

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

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

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc163249.html

(2)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月9日
下一篇 2017年6月9日

相关推荐