我想通过flexible脚本从.xls文件的A1-A5取出数据放到MW20-MW28。
我先在flexible的TAG变量中建立了receivearray(地址:MW20 ,数据类型:int ,数组个数:5)
然后相关脚本这样写:
Dim i
For i=1 to 5
receivearray(i)=objExcelApp.Worksheets(sheetname).cells(i,1).value
Next
执行后发现excel软件总是关不掉,脚本编译也没问题能通过。
后来开个变量表监控数据读写,发现MW20总是0,没写入任何数据,数据从MW22开始写的,我把receivearray的数组个数加到6,执行就正常了,但数据是写到MW22-MW30这5个地址的,之前excel不能关掉应该是数据写入地址超数组下标了。
问题是为什么程序把MW20这个地址跳过了,查了半天没明白
-数组的下标是从0开始的,你的for循环改成从0到4试试
------谢谢!好几天没来了,的确是数组下标超限,excel是1开始,flexible里声明的是0开始。
欢迎光临 工控编程吧 (https://www.gkbc8.com/) | Powered by Discuz! X3.4 |