|
×马上注册,结交更多工控达人,分享经验,让你轻松玩转追梦工控论坛。 已有帐号? 点击登录 或者
目的:每单击一次鼠标左键,将一个wincc内部变量"tag1"写入excel表格中。第一次单击鼠标,数据存进表格的第一行,其中第一列为单击鼠标的时间,第二列为当前"tag1"的数值;第二次单击鼠标时,数据存进第二行。。。依此类推, 代码如下:但问题是功能始终实现不了,请高手看看这段代码问题出在哪里了,谢谢!
Sub OnLButtonDown(Byval Item, Byval Flags, Byval x, Byvaly)
Dim value,k
Set value = HMIRuntime.Tags("i") // 变量“i”是内部变量无符号32数,
k = value.Read // 记录鼠标单机的次数</P>Dim fname
fname="D:report3.xlsx"
Dim ObjExcelApp
Set objExcelApp = CreateObject("Excel.Application")
objExcelApp.Workbooks.Open fname
objExcelApp.worksheets ("sheet1").Cells(k, 2).Value = HMIRuntime.Tags("tag1").read
objExcelApp.worksheets ("sheet1").Cells(k, 1).Value = Now
k = k + 1
HMIRuntime.Tags ("i").Write k
objExcelApp.ActiveWorkbook.Save
objExcelApp.Workbooks.Close
objExcelApp.Quit
Set ObjExcelApp = Nothing
End Sub
问题补充:
谢谢你们的回答,我的这种方法还是可以的,问题出在 i 的初始值上了,从第一行开始记录 初始值需要设定为1 |
|