Dim GROUP1,GROUP2,mytag(18),sum Set GROUP1=HMIRuntime.Tags.CreateTagSet Set GROUP2=HMIRuntime.Tags.CreateTagSet GROUP1.add "IO_1"//wincc内部变量 GROUP1.add "IO_2" GROUP1.add "IO_3" GROUP1.add "IO_5" GROUP1.add "IO_6" GROUP1.add "IO_7" GROUP1.add "IO_8" GROUP1.add "IO_9" GROUP1.add "IO_10" GROUP1.add "IO_11" GROUP1.add "IO_12" GROUP1.add "IO_13" GROUP1.add "IO_14" GROUP1.add "IO_15" GROUP1.add "IO_16" GROUP1.add "IO_17" GROUP1.add "IO_18" GROUP1.Read GROUP2.add "PLC_IO_1"//wincc外部变量 GROUP2.add "PLC_IO_2" GROUP2.add "PLC_IO_3" GROUP2.add "PLC_IO_4" GROUP2.add "PLC_IO_5" GROUP2.add "PLC_IO_6" GROUP2.add "PLC_IO_7" GROUP2.add "PLC_IO_8" GROUP2.add "PLC_IO_9" GROUP2.add "PLC_IO_10" GROUP2.add "PLC_IO_11" GROUP2.add "PLC_IO_12" GROUP2.add "PLC_IO_13" GROUP2.add "PLC_IO_14" GROUP2.add "PLC_IO_15" GROUP2.add "PLC_IO_16" GROUP2.add "PLC_IO_17" GROUP2.add "PLC_IO_18" mytag(0)=GROUP1("IO_1").VALUE mytag(1)=GROUP1("IO_2").VALUE mytag(2)=GROUP1("IO_3").VALUE mytag(3)=GROUP1("IO_4").VALUE mytag(4)=GROUP1("IO_5").VALUE mytag(5)=GROUP1("IO_6").VALUE mytag(6)=GROUP1("IO_7").VALUE mytag(7)=GROUP1("IO_8").VALUE mytag(8)=GROUP1("IO_9").VALUE mytag(9)=GROUP1("IO_10").VALUE mytag(10)=GROUP1("IO_11").VALUE mytag(11)=GROUP1("IO_12").VALUE mytag(12)=GROUP1("IO_13").VALUE mytag(13)=GROUP1("IO_14").VALUE mytag(14)=GROUP1("IO_15").VALUE mytag(15)=GROUP1("IO_16").VALUE mytag(16)=GROUP1("IO_17").VALUE mytag(17)=GROUP1("IO_18").VALUE sum=0.0 FOR I=0 TO 17 sum=sum+mytag(I) next if sum<=100.0 then GROUP2("PLCIO_1")=mytag(0) GROUP2("PLCIO_2")=mytag(1) GROUP2("PLCIO_3")=mytag(2) GROUP2("PLCIO_4")=mytag(3) GROUP2("PLCIO_5")=mytag(4) GROUP2("PLCIO_6")=mytag(5) GROUP2("PLCIO_7")=mytag(6) GROUP2("PLCIO_8")=mytag(7) GROUP2("PLCIO_9")=mytag(8) GROUP2("PLCIO_10")=mytag(9) GROUP2("PLCIO_11")=mytag(10) GROUP2("PLCIO_12")=mytag(11) GROUP2("PLCIO_13")=mytag(12) GROUP2("PLCIO_14")=mytag(13) GROUP2("PLCIO_15")=mytag(14) GROUP2("PLCIO_16")=mytag(15) GROUP2("PLCIO_17")=mytag(16) GROUP2("PLCIO_18")=mytag(17) GROUP2.WRITE else msgbox("输入数据超限",0,"警告") end if 把上面的脚本写到wincc的按钮vbs动作中。如果18个地方输入的数据总和小于等于100.0则把这些值传给plc,否则不传,保留原来的的值。