我有一个包含多个工作簿的文件。我正在使用此宏(下面)在此文件的每个工作簿上进行一些更改。
Sub REPLACE1()
Dim y As Integer
Dim wB As Workbook
Set FileSystemObj = CreateObject("Scripting.FileSystemObject")
Set FolderObj = FileSystemObj.GetFolder("C:\MYLOCATION\")
For Each fileobj In FolderObj.Files
Set wB = Workbooks.Open(fileobj.Path)
With wB.Sheets("vlcs")
For y = 3 To .Cells(Rows.Count, 8).End(xlUp).Row
If .Cells(y, "A") = "" Then
.Cells(y, "A") = 0
End If
If .Cells(y, "O") = "" Then
.Cells(y, "O") = 0
End If
If Left(.Cells(y, "H").Value, 2) = "24" Then
.Cells(y, "H") = 2359
End If
Next y
End With
wB.Save
wB.Close '<---- Problems are from here
Next fileobj
End Sub
关于循环的一切都很好但是,wB.Save和wB.Close存在问题。 对于循环的每个工作簿,我有警报&#34;您是否要保存更改&#34;,这是正常的,因为我保存并关闭我的循环文件。而且,如果我点击YES,一切都会崩溃。我尝试在wB.Close之后放入DoEvents但没有任何改变。 感谢您的任何建议。
答案 0 :(得分:0)
将其更改为wB.Close False
,其中False表示不保存更改