找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
小程序查看
手机扫码追踪该问题
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
WinCC Professional V15 VBS脚本读取变量记录到EXCEL
http://www.ad.siemens.com.cn/productportal/Prods/HMI/Portal_WinCC/Q3_configuration/FAQ1.html
补充:上面这个例子不行?我原本照抄下来测试过,能实现采集数据的。脚本里读取的变量名是Tag_1 可以直接在脚本里改,也可以在画面中反应字符串变量来替换Tag_1的写入。下面是我当时测过的程序。下载WebUX_V15文件,然后把后缀名改为.zap15,然后用V15软件打开直接使用就行。
貌似项目附件传不上来,那么就在上吗链接的示例中添加name名称WString 类型的变量,然后在画面使用IO域关联此变量,筛选的时候,输入时间和给name这个变量赋值Tag_1然后在读取就OK了。
或者把sSql = "Tag:R,(''guidangA\"& name.Value &"''),''" & UTCBeginTime & "'',''" & UTCEndTime & "''" 这条语句中name.value 改为Tag_1.
''创建一张当前日期命名的表格,如存在,跳过
Dim fso,myfile,daystr,dstr,fname
dstr=CStr(Year(Now))&"-"&CStr(Month(Now))&"-"&CStr(Day(Now))
fname="E:\报表\" + dstr + ".xls"
Set fso=CreateObject("scripting.FileSystemObject")
Set MyFile=fso.GetFile("E:\模板excel.xls")
If fso.FileExists(fname) Then
''MsgBox "文件已经存在"
''文件存在,不执行
else
MyFile.Copy(fname) ''''不存在,复制模板
End If
''检测当前日期名表格是否打开,如有,关闭保存
''模板是否打开状态,无需检测(copy)
Dim objExcelApp,objExcelBook,objExcelSheet
On Error Resume Next
Dim ExcelApp,ExcelBook
Set ExcelApp = GetObject(,"Excel.Application")
If TypeName(ExcleApp) = "Application" Then
For Each ExcelBook In ExcelApp.WorkBooks
If ExcelBook.FullName ="E:\报表\" + dstr + ".xls" Then
ExcelApp.ActiveWorkbook.Save
ExcelApp.Workbooks.Close
ExcelApp.Quit
Set ExcelApp=Nothing
Exit For
End If
Next
End If
''定义变量
''Dim objExcelApp
Dim tagtag1,tagtag2,tagtag3,tagtag4,tagtag5,tagtag6,tagtag7,tagtag8,tagtag9,tagtag10,tagtag11,tagtag12,tagtag13
Dim i,j,xuhao
Dim tagshijian,sheetname
''REPORT1.NO1~NO13需要记录的数据
Set tagtag1=HMIRuntime.Tags("REPORT1.NO1")
Set tagtag2=HMIRuntime.Tags("REPORT1.NO2")
Set tagtag3=HMIRuntime.Tags("REPORT1.NO3")
Set tagtag4=HMIRuntime.Tags("REPORT1.NO4")
Set tagtag5=HMIRuntime.Tags("REPORT1.NO5")
Set xuhao=HMIRuntime.Tags("REPORT1_TR2")
sheetname="1#机当日批次报表"
''打开表格
Set objExcelApp =CreateObject("Excel.Application")
''open file
objExcelApp.Visible=True
objExcelApp.Workbooks.Open"E:\报表\" + dstr + ".xls"
objExcelApp.Worksheets(sheetname).Activate
''实时数据写入
xuhao.Read
i=xuhao.Value+2
xuhao.Read
objExcelApp.Worksheets(sheetname).cells(i,1).value= xuhao.Value
tagshijian=CStr(Hour(Now))&":"&CStr(Minute(Now))&":"&CStr(Second(Now))
objExcelApp.Worksheets(sheetname).cells(i,2).value= tagshijian
tagtag1.Read
objExcelApp.Worksheets(sheetname).cells(i,3).value= tagtag1.Value
tagtag2.Read
objExcelApp.Worksheets(sheetname).cells(i,4).value= tagtag2.Value
tagtag3.Read
objExcelApp.Worksheets(sheetname).cells(i,5).value= tagtag3.Value
tagtag4.Read
objExcelApp.Worksheets(sheetname).cells(i,6).value= tagtag4.Value
tagtag5.Read
objExcelApp.Worksheets(sheetname).cells(i,7).value= tagtag5.Value
''关闭保存
objExcelApp.ActiveWorkbook.Save
objExcelApp.Workbooks.Close
objExcelApp.Quit
Set objExcelApp= Nothing
End Sub
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!