EXCEL是个好东东。

已锁定

ws0866

  • 帖子

    1089
  • 精华

    8
  • 被关注

    21

论坛等级:侠圣

注册时间:2005-03-24

白金 白金 如何晋级?

EXCEL是个好东东。

942

9

2022-10-17 00:15:01


客户要求HMI画面要显示所有IO点的注释和状态,如下图,


IO少的时候还好,可以一页一页的做出来,但IO多的就比较头痛了,最近做了个改造项目,输入从I0一直用到I90,虽然中间有些空的,但也很多,所以,只能想个偷懒的方法。

第一列地址用8个符号IO域,变量都连接到MW10(Input_bit)上,文本列表要建8个,对应要显示的地址内容;第二列注释用8个符号IO域,变量也都连接到MW10(Input_bit)上,文本列表也要建8个,对应要显示的注释内容,这两列也可以合成一个文本列表,第三列状态用8个圆,做外观动画,分别对应MB12的8个位,在PLC程序中用MW10做寻址,把输入的数据写入到MB12中。

接下来的工作就是做这16个文本列表,每个文本列表里有100行(IB0-IB99),在Excel里做好,再导入到flexible就行了(屏比较老博图不支持了),其实工作都挺简单,就是在做Excel时遇到了些问题,原来的变量表顺序是I0.0、I0.1、I0.2…I1.0、I1.1、I1.2….这样的顺序,但我要的是I0.0、I1.0、I2.0…I0.1、I1.1、I2.1这样的顺序,第一列还好做有规律,一会就做完了,但第二列就麻烦了,把PLC的变量表复制过来一点一点改要很长时间,就又想偷懒的办法,想用VBA处理下,但感觉也比较麻烦,百度了下,Excel里有VLOOKUP命令,功能是按列查找,最终返回该列所需查询序列所对应的值,比如(VLOOKUP(G2,B:D,3,FALSE),就是在第B列到D列里查找G2单元格的内容,返回查找到的单元格后面第三列的内容,这样就可以按地址在原来的符号表中把注释提取出来了,感觉比VBA方便哈,如下图,前四列是在符号表中复制出来的,G列是我要用的顺序,H列是根据G列的内容,从D列取出的注释。J列是把I列和H列和在一起。


剩下的工作就简单了,按照flexible的格式处理,再导入就OK了。

总结:Excel真是个好东东,VLOOKUP用来整理文档的格式很好用,好好学习下能节省好多时间。


EXCEL是个好东东。 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32565条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

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