想通过VBS脚本记录excel报表,在网上也搜集了不少例子,现在卡在一个问题上,先讲下我想实现的效果:
1.在数据记录过程中,excel表格一直打开,且为可见。
2.一个sheet中会多次触发数据记录。
3.sheet中的一些内容需要人工输入,所以不希望excel被关闭再打开(关闭时可能正在进行人工输入)。
我找到的VBS代码中,都使用了OPEN方法,且在OPEN之前必须先CLOSE,否则会打开双份。有没有一种方法可以直接指定一个打开的excel文件进行读写?或者是我现在的OPEN用法有误?请大家帮忙看一下,谢谢!
下面是我测试时的代码:
Sub test3
On Error Resume Next
Dim ExcelApp
Set ExcelApp = GetObject(,"Excel.Application")
If TypeName(ExcelApp) = "Application" Then
For Each ExcelBook In ExcelApp.WorkBooks
If ExcelBook.FullName = "D:\Excelcode.xlsx" Then
ExcelApp.ActiveWorkbook.Save
ExcelApp.Workbooks.Close
ExcelApp.Quit
Set ExcelApp= Nothing
Exit For
End If
Next
End If
Set objExcelApp =CreateObject("Excel.Application")
objExcelApp.Visible=True
objExcelApp.Workbooks.Open "D:\Excelcode.xlsx"
objExcelApp.Worksheets("report").Activate
objExcelApp.Cells(4, 3).Value = HMIRuntime.Tags("usercodenew1").Read
objExcelApp.ActiveWorkbook.Save
End Sub