想做一个按钮,按一下将时间和几个数据记录到excel表格中,VBS代码如下,运行之后发现,windows系统后台有excel运行,但是数据没有写入,而且windows后台中的excel一直开启导致excel无法正常使用,是代码有问题么?另:如何将时间记录在表格中?
Sub OnClick(ByVal Item)
Dim fso,myfile
Dim i
Set fso = CreateObject("scripting.FileSystemObject")
Set MyFile = fso.GetFile("C:\test\3.xls")
Dim ObjExcelApp
Set objExcelApp = CreateObject("Excel.Application")
objExcelApp.Workbooks.Open MyFile
i=2
Do While ExcelSheet.cells(2, i).value<>""
i = i + 1
Loop
objExcelApp.worksheets ("sheet1").Cells(i, 1).VAlue = HMIRuntime.Tags("test").read
objExcelApp.worksheets ("sheet1").Cells(i, 2).VAlue = HMIRuntime.Tags("test").read
objExcelApp.worksheets ("sheet1").Cells(i, 3).VAlue = HMIRuntime.Tags("test").read
objExcelApp.Workbooks.Close
objExcelApp.Quit
Set ObjEXceLapp = Nothing
End Sub
我试验了一下,去掉do loop是可以使用的,求解答
最佳答案
do loop 是判断第几行没有数据的
里面excelsheet这个变量没有定义,你改成
Do While objExcelApp.worksheets ("sheet1").cells(2, i).value<>""
i = i + 1
Loop
这样就应该可以了
提问者对于答案的评价:
多谢回答,我少说了一些,我是想一行一行往下排着记录数据的,所以我才加了一个空白检测,刚刚学习,还有很多不会,多谢大家指点!
最佳答案作者回复:
客气,共同学习
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc160596.html