我是VBscript的新手,我正在编写一个简单的脚本,用于在给定文件夹位置中的几千个csv文件中更改几个单元格。我有一个很好的开始,似乎所有的工作,除了当我运行脚本(从一个只调用脚本的.bat文件),它只改变和移动3-8个文件。它改变的文件数量是随机的,不像它总是改变5个文件或其他东西。我不确定代码中出现了什么问题,为什么它不会编辑和移动每个文件,并且每次只能执行一次,这是我迄今为止所提供的任何帮助提前感谢:VB脚本不会遍历给定文件夹中的每个文件
Set objFSO = Wscript.CreateObject("Scripting.FileSystemObject")
Set colFiles = ObjFSO.GetFolder("C:\Users\xxx\BadCSVs").Files
Set xl = CreateObject("Excel.Application")
For Each objFile in colFiles
If LCase(objFSO.GetExtensionName(objFile)) = "csv" Then
Set wb = xl.Workbooks.Open(objFile)
Set sht = xl.ActiveSheet
If(sht.Cells(1,11) <> "") Then
sht.Cells(1,8) = sht.Cells(1,8) & sht.Cells(1,9)
sht.Cells(1,9) = sht.Cells(1,10)
sht.Cells(1,10) = sht.Cells(1,11)
sht.Cells(1,11) = Null
wb.Save
wb.Close True
Else
'if file is opened up and has only 10 columns of data, then it makes no changes, then closes it.
wb.Close
End If
End If
Next
xl.Quit
VB.NET IsNot vba并且也VB.NET IsNot VBScript。 – Plutonix
On Error Resume Next可能会掩盖可能解释您的不一致行为的错误。 –