Чтобы использовать VBA для закрытия книги, используйте метод Workbook.Close, а для выхода из Excel — метод Application.Quit.
Вот несколько примеров кода: Закройте активную книгу и спросите, следует ли ее сохранять, если в книге есть изменения:
Скопируйте код кода следующим образом:
Суб CloseWorkbook()
ActiveWorkbook.Close
Конец субтитра
Если вы хотите избежать запросов, вы можете добавить параметр «SaveChanges», например, для непосредственного сохранения и закрытия книги:
Скопируйте код кода следующим образом:
Подзаголовок ClostAndSaveWorkbook()
ActiveWorkbook.Close Savechanges:=True
Конец субтитра
Измените «True» в приведенном выше коде на «False», чтобы закрыть книгу напрямую без сохранения.
Закройте все открытые книги и спросите, следует ли их сохранять:
Скопируйте код кода следующим образом:
ПодзакрытьAllWorkbooks()
При ошибке Возобновить Далее
Рабочие книги.Закрыть
Конец субтитра
Выйдите из Excel и получите предложение сохранить измененную книгу:
Скопируйте код кода следующим образом:
СубВыходExcel()
Приложение.Выйти
Конец субтитра
Сохраните активную книгу и закройте Excel:
Скопируйте код кода следующим образом:
Подпрограмма SaveActiveWorkAndQuit()
ActiveWorkbook.Сохранить
Приложение.Выйти
Конец субтитра
Следующий код не будет предлагать сохранить книгу при выходе из Excel.
Сохраните все открытые книги и закройте Excel:
Скопируйте код кода следующим образом:
Подпрограмма SaveAllAndQuit()
Для каждой книги в книгах
wbk.Сохранить
Следующий
Приложение.Выйти
Конец субтитра
Выйдите из Excel без сохранения изменений:
Скопируйте код кода следующим образом:
Субкутиандноалертс()
Application.DisplayAlerts = Ложь
Приложение.Выйти
Конец субтитра
Вот некоторые распространенные операции в VBA:
Открыть новую книгу
Скопируйте код кода следующим образом:
Рабочие книги.Добавить
Получить имя первой книги
Скопируйте код кода следующим образом:
Рабочие тетради(1).Имя
Получить количество открытых книг
Скопируйте код кода следующим образом:
Рабочие книги.Количество
Активируйте вторую открытую книгу
Скопируйте код кода следующим образом:
Рабочие книги(2).Активировать
Активировать книгу Chap02.xls
Скопируйте код кода следующим образом:
Рабочие книги("Chap02.xls").Активировать
Текущая активная книга сохраняется как NewChap.xls.
Скопируйте код кода следующим образом:
Имя файла ActiveWorkbook.SaveAs:="NewChap.xls"
Закройте первую книгу
Скопируйте код кода следующим образом:
Рабочие тетради(1).Закрыть
Закройте текущую активную книгу без сохранения изменений.
Скопируйте код кода следующим образом:
ActiveWorkbook.Close SaveChanges:=False
Закройте все открытые книги
Скопируйте код кода следующим образом:
Рабочие книги.Закрыть
Если вы выполнили последний пример, все ваши книги теперь закрыты.
Обязательно откройте новую книгу, прежде чем использовать ее на листе.
Когда вы добавляете один лист, вы должны знать, как добавить новый лист в книгу, знать, как выбрать лист или группу листов, а также знать, как называть, копировать, перемещать и удалять листы.
В VB для каждой задачи требуется специализированный метод или свойство.
Добавить новый лист
Скопируйте код кода следующим образом:
Рабочие листы.Добавить
Получить имя первого листа
Скопируйте код кода следующим образом:
Рабочие листы(1).Имя
Выберите лист с именем «Лист3».
Скопируйте код кода следующим образом:
Рабочие листы(3).Выбрать
Выберите первый, третий и четвертый листы.
Скопируйте код следующим образом: Worksheets(Array(1,3,4)).Выберите
Активируйте рабочий лист с именем «Лист1».
Скопируйте код кода следующим образом:
Рабочие листы("Лист1").Активировать
Переместить лист «Лист2» перед листом «Лист1».
Скопируйте код кода следующим образом:
Рабочие листы("Лист2").Переместить раньше:=Рабочие листы("Лист1")
Переименуйте лист «Лист2» в «Расходы».
Скопируйте код кода следующим образом:
Worksheets("Лист2").Name = "Расходы"
Получить количество листов в текущей книге
Скопируйте код кода следующим образом:
Рабочие листы.Count
Удалить лист «Расходы» в текущей книге.
Скопируйте код кода следующим образом:
Рабочие листы("Расходы").Удалить