Выполнение процедуры при открытии книги (Microsoft Excel)
Вы можете заставить Excel запускать процедуру автоматически при каждом открытии конкретной книги. Например, при открытии книги вы можете захотеть запустить процедуру, которая спрашивает пользователей, хотят ли они выполнить какую-либо задачу, например, сохранить данные за предыдущий день в другой файл.
На самом деле Excel предоставляет два разных способа запуска процедуры при открытии книги. В обоих случаях все, что вам нужно сделать, это указать специальное имя для макроса; это ключ, который сообщает Excel, что вы хотите запустить процедуру при открытии. При желании вы можете назвать процедуру Auto_Open и поместить ее в обычный макромодуль. Вы также можете определить процедуру под названием Workbook_Open в объекте ThisWorkbook.
В качестве примера рассмотрим следующий код:
Sub Auto_Open() Dim sMsg As String Dim iBoxType As Integer Dim iUpdate As Integer Dim sDefault As String Dim sOldFile As String Dim iStatusState As Integer sMsg = "Do you want to save yesterday's transactions?" iBoxType = vbYesNo + vbQuestion iUpdate = MsgBox(sMsg, iBoxType, "Automatic Backup") If iUpdate = vbYes Then sMsg = "Which filename would you like use?" sDefault = "OLD.DAT" sOldFile = InputBox(sMsg, "Automatic Backup", sDefault) iStatusState = Application.DisplayStatusBar Application.DisplayStatusBar = True Application.StatusBar = "Updating past months..." UpdateYesterday(sOldFile) Application.StatusBar = False Application.DisplayStatusBar = iStatusState End If End Sub
(Помните, что эта процедура является примером; она не будет работать должным образом в вашей системе, потому что вызывает функцию с именем UpdateYesterday, которая выполняет фактическое обновление.)
Этот макрос запускается автоматически при открытии книги, к которой он прикреплен. Вы также можете изменить код и поместить его в объект ThisWorkbook, просто изменив первую строку на это:
Private Sub Workbook_Open()
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (8451) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:
link: / excel-Running_a_Procedure_when_a_Workbook_is_Opened [Запуск процедуры при открытии книги]
.