技术论坛

 wincc VBS脚本利用数组 改写多个变量,并求和

返回主题列表
作者 主题
kibu
侠圣

经验值:4513
发帖数:554
精华帖:4
楼主    2018-04-10 16:42:02
主题:wincc VBS脚本利用数组 改写多个变量,并求和 精华帖 

问题:有10个变量 A1、A2……A10,需要分别写入 1、2……10,用IO域太麻烦,用vbs脚本怎实现?

提示:利用数组方便很多,不过数组元素编号从0开始的,需要注意一下


示例:新建内部变量A1到A10,然后在画面内建一个按钮,按钮鼠标事件单击左键里写入VBS脚本如下


Sub OnLButtonUp(ByVal Item, ByVal Flags, ByVal x, ByVal y)           

Dim A(9),I,TE,SUM

For I = 0 To 9

    TE=CSTR(I+1)

    TE="A"&TE  '合成变量名

    Set A(I)=HMIRuntime.Tags(TE)

    A(I).value=I+1

    A(I).write

Next

SUM=0

For I=0 To 9

    A(I).read

    SUM=SUM+A(I).value

Next

MsgBOX(SUM)

End Sub

   

保存画面,运行测试,点击按钮后弹出消息窗,求和值显示55;更换其他计算方式也可进行其他计算

以上示例仅供参考,不限于修改变量值,主要学习批量修改的方法。

当然,如果画面里有多个名称类似的对象,修改对象属性也可用此方法。

比如有多个圆,需要同时修改圆的半径,不过需圆的名称统一修改为:前面字符一致,后面按数字顺序编号的形式,利用circle1、circle2、circle3……

您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。