Как запустить макрос автоматически перед Workbook Close в Excel
Часто мы хотим выполнить некоторые предопределенные и повторяющиеся шаги до закрытия книги. Например, закрытие подключений к базе данных, удаление данных мусора, защита книги, сохранение книги или просто прощание с пользователем. Это можно сделать с помощью link: / events-in-vba-workbook-events-using-vba-in-microsoft-excel [Workbook Events of Excel]
.
В этой статье мы узнаем, как запустить макрос при закрытии книги самым простым способом. === Автоматический запуск макроса при закрытии книги Чтобы запустить макрос при закрытии книги, мы будем использовать событие рабочей книги Workbook_BeforeClose. Синтаксис этого события следующий.
Private Sub Workbook_BeforeClose(Cancel As Boolean) 'Your Code here. End Sub
Чтобы записать событие в книге, сделайте это.
Откройте VBE с помощью Alt + F11. Теперь в проводнике проекта найдите книгу, в которой вы хотите разместить код. Теперь найдите объект ThisWorkbook * в проводнике проекта. Дважды щелкните по нему.
Теперь вы можете увидеть два раскрывающихся списка над областью кодирования. Щелкните первую и выберите Workbook. Теперь все доступные события, связанные с книгой, можно увидеть в правом раскрывающемся списке. Щелкните по нему и выберите BeforeClose. Это напишет пустую подпрограмму workbook_BeforeClose в области кодирования.
Здесь необходимо написать весь код, который вы хотите запустить до закрытия книги. Вы можете просто вызвать другие подпрограммы, написанные в любом модуле, в этом случае для запуска. Этот код инициирует событие для запуска всего, что написано между этими двумя строками.
Пример:
Давайте воспользуемся событием Workbook_BeforeClose, чтобы проверить пользователя и поприветствовать его при открытии книги.
Private Sub Workbook_BeforeClose(Cancel As Boolean) ThisWorkbook.Save MsgBox "This Workbook is saved." End Sub
В этот код можно поместить что угодно. Мы даже можем вызвать любую подпрограмму из любого модуля в книге. Сохраните книгу и запустите код один раз. Теперь закройте книгу. Ваша рабочая книга будет автоматически сохранена, и будет показано сообщение.
Private Sub Workbook_BeforeClose(Cancel As Boolean) Call ShutDatabase ' calling subroutine that shuts down the source database End Sub
Так что да, это все. Это простой способ автоматического запуска макроса при закрытии книги. Я надеюсь, что мой текст был достаточно пояснительным, и сайт хорошо послужил вам. Если это не помогло, напишите свой запрос в разделе комментариев ниже. Я отвечу на него как можно скорее.
Статьи по теме:
link: / events-in-vba-workbook-events-using-vba-in-microsoft-excel [События книги с использованием VBA в Microsoft Excel]
: Здесь вы можете найти все события книги, которые могут быть инициированы для запуска определенного кода по конкретным событиям.
link: / tips-using-workheet-change-event-to-run-macro-when-any-change-is-made [Использование события изменения рабочего листа для запуска макроса при любом изменении]
| Итак, чтобы запускать ваш макрос всякий раз, когда лист обновляется, мы используем события рабочего листа VBA.
link: / events-in-vba-run-macro-if-any-change-made-on-sheet-range [Запустить макрос, если какие-либо изменения сделаны на листе в указанном диапазоне]
| Чтобы запустить код макроса при изменении значения в указанном диапазоне, используйте этот код VBA. Он обнаруживает любые изменения, сделанные в указанном диапазоне, и запускает событие.
link: / events-in-vba-simplest-vba-code-to-highlight-current-row-and-column-using [Простейший код VBA для выделения текущей строки и столбца с использованием]
| Используйте этот небольшой фрагмент VBA, чтобы выделить текущую строку и столбец листа.
Популярные статьи:
link: / keyboard-formula-shortcuts-50-excel-shortcuts-to-вашу-продуктивность [50 комбинаций клавиш Excel для повышения вашей продуктивности]
| Выполняйте свою задачу быстрее. Эти 50 ярлыков сделают вашу работу в Excel еще быстрее.
link: / формулы-и-функции-введение-функции-vlookup [Функция ВПР в Excel]
| Это одна из наиболее используемых и популярных функций Excel, которая используется для поиска значений из разных диапазонов и листов. link: / tips-countif-in-microsoft-excel [COUNTIF в Excel 2016]
| Подсчитайте значения с условиями, используя эту удивительную функцию. Вам не нужно фильтровать данные для подсчета определенных значений.
Функция Countif важна для подготовки вашей приборной панели.
link: / excel-formula-and-function-excel-sumif-function [Как использовать функцию СУММЕСЛИ в Excel]
| Это еще одна важная функция приборной панели. Это поможет вам суммировать значения для конкретных условий.