В VBA как закрыть книгу Excel, не закрывая все книги? - PullRequest
0 голосов
/ 10 сентября 2009

Используя Access VBA, я хочу открыть файл XL, сделать что-то, а затем закрыть его, не закрывая другие открытые файлы XL.

Вариант 1: если последняя строка "ObjXL.Application.Quit", то закрываются ВСЕ открытые файлы Excel, а не только текущий.

Вариант 2. Если последняя строка "ObjXL.Close", то рабочая книга закрывается, но этот конкретный экземпляр XL остается открытым (т. Е. Excel без рабочей книги).

Итак, как мне закрыть книгу Excel, не закрывая другие открытые книги?

Sub x()
    Dim ObjXL As Excel.Workbook
    Set ObjXL = GetObject("C:\Reports\Adhoc Default.xls")
    ObjXL.Application.Visible = True
    ObjXL.Windows(1).Visible = True
    ObjXL.Worksheets(1).Activate
    DoStuff()
    ObjXL.Save
    Option1/2/3?
End Sub

1 Ответ

4 голосов
/ 10 сентября 2009

Хех, я ответил на свой вопрос раньше всех:

Sub xx()
    Dim XLapp As New Excel.Application
    Dim ObjXL As Excel.Workbook
    Set ObjXL = XLapp.Workbooks.Open("C:\reports\adhoc default.xls")
    ObjXL.Application.Visible = True
    ObjXL.Windows(1).Visible = True
    ObjXL.Worksheets(1).Activate
    ObjXL.Save
    ObjXL.Close
    XLapp.Quit
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...