Wcc6.0如何把历史趋势或实时数据导入Excel表格,如何在wcc里进行平均计算,如何在画面上做好打印按钮,还可以实施定时打印???谢谢
问题补充:
keke_1你好,我想问下如何读取wcc里的变量,用一个Excel表格做总表,进行运算,在分时间段保存,每个时间段一个Excel文件,方便读取!!! 谢谢
最佳答案
1) 其实数据数据导入Excel表格的功能就是查询归档数据库的问题没,归档做好以后,按时间查询然后把数据写到相应的 Excel中,给你一个查询归档数据库的例子:
Dim cnn As String
cnn = "provider=WinCCOLEDBProvider.1;catalog=CC_gz_food_09_07_14_14_54_22R;data source=wincc01\WinCC"
dim cc1 as object
Set cc1 = CreateObject("adodb.connection")
cc1.ConnectionString = cnn
cc1.CursorLocation = 3
cc1.Open
Dim rst As Object
Set rst = CreateObject("adodb.recordset")
Dim fname
fname="e:\baobiao\report.xls"
Dim ObjExcelApp
Set objExcelApp = CreateObject("Excel.Application")
objExcelApp.Workbooks.Open fname
Dim i
i=4
Dim ssql As String
ssql = "TAG:R,'speed1\c_speed1_1','2009-09-24 09:19:00.000','2009-09-24 09:20:00.000'"
rst.Open ssql, cc1
rst.MoveFirst
objExcelApp.worksheets ("sheet1").Cells(i, 2).VAlue = rst.fields(1).value
objExcelApp.worksheets ("sheet1").Cells(i, 3).VAlue = rst.fields(2).value
objExcelApp.worksheets ("sheet1").Cells(i, 4).VAlue = rst.fields(3).value
cc1.Close
Set cc1 = Nothing
Set rst = Nothing
以上cnn连接字符串可以在Wincc运行以后在数据库中看到。
ssql中speed1\c_speed1_1分别为归档名称和归档变量。
2)wcc里进行平均计算用全局脚本实现,周期执行,添加一2秒的定时器:
dim tag1,tag2,tag3
set tag1=hmiruntime.tags("tag1")
set tag2=hmiruntime.tags("tag2")
set tag3=hmiruntime.tags("tag3")
tag1.read
tag2.read
tag3.read
tag3.write (tag1+tag2)/2
set tag1=nothing
set tag2=nothing
set tag3=nothing
3) 1和2的问题解决以后,在画面上做个打印按钮,和定时打印的功能应该就很容易了,1和2的功能结合起来用就可以了!
提问者对于答案的评价:
谢谢
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc268640.html