Вот несколько способов закрыть все открытые книги в VBA:
Метод 1: Закрыть метод
Sub CloseAllWorkbooks()
Dim wb As Workbook
For Each wb In Workbooks
wb.Close SaveChanges:=False
Next wb
End Sub
Метод 2: Application.Workbooks.Count
Sub CloseAllWorkbooks()
Dim i As Integer
For i = Application.Workbooks.Count To 1 Step -1
Application.Workbooks(i).Close SaveChanges:=False
Next i
End Sub
Метод 3: выполнение цикла while
Sub CloseAllWorkbooks()
Do While Workbooks.Count > 0
Workbooks(1).Close SaveChanges:=False
Loop
End Sub
Метод 4. Непосредственное закрытие ActiveWindow
Sub CloseAllWorkbooks()
Do While Not ActiveWindow Is Nothing
ActiveWindow.Close SaveChanges:=False
Loop
End Sub
Метод 5: Метод выхода
Sub CloseAllWorkbooks()
Application.Quit
End Sub