我想将EXCEL第三列的2-1001行1000个数据通过按钮批量写入S7-200 SMART VW2-VW1000里,根据PC Access手册里面介绍的可以通过VBA语句实现。如果我一次写10个或少量的数据实现起来比较容易。
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW2,WORD,RW", Cells(3, 3), "")
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW4,WORD,RW", Cells(4, 3), "")
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW6,WORD,RW", Cells(5, 3), "")
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW8,WORD,RW", Cells(6, 3), "")
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW10,WORD,RW", Cells(7, 3), "")
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW12,WORD,RW", Cells(8, 3), "")
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW14,WORD,RW", Cells(9, 3), "")
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW16,WORD,RW", Cells(10, 3), "")
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW18,WORD,RW", Cells(11, 3), "")
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW20,WORD,RW", Cells(12, 3), "")
但是写1000个数据就要将上述语句写1000遍费时费力。
我想通过Do While语句做,将VW后面的数字定义成变量F,F=2,循环一次F+2,也就是"2,VW + CStr(F),WORD,RW",这样老是报错。
下面是我写的代码,下面的代码只能实现单击按钮后EXCEL表格的第三列2-11能依次写入,但所有的数据只能写到VW2里。
Private Sub CommandButton1_Click()
Dim I As Integer
I = 1
Do While I < 10
Call Excel.Application.Run("OPCS7200ExcelAddin.XLA!OPCWrite", "2,VW2,WORD,RW", Cells(I, 3), "$D$" + CStr(I))
I = I + 1
Loop
End Sub
请高手指点如何将EXCEL内1000个以上的数据通过PC Access批量写入S7-200 SMART,有其他更简单的办法更好,不一定要通过Do While语句做,致谢!