В этой статье мы рассмотрим два основных типа процедур: Public и Private, и их влияние на видимость и доступность кода.
1. Public процедуры
Процедуры, объявленные с модификатором доступа "Public", имеют широкую область действия и могут быть вызваны из любого места в вашем проекте VBA, а также из внешних проектов или приложений, если они видимы.
Пример Public процедуры:
Public Sub МояПубличнаяПроцедура()
MsgBox "Моя Публичная Процедура"
' Код публичной процедуры
End Sub
Вызов Public процедуры из другой процедуры:
Sub ДругаяПроцедура()
МояПубличнаяПроцедура ' Вызов публичной процедуры
End Sub
Вызов Public процедуры из другого модуля:
Sub ДругаяПроцедура()
МояПубличнаяПроцедура ' Вызов публичной процедуры
End Sub
2. Private процедуры
Процедуры, объявленные с модификатором доступа "Private", имеют ограниченную область действия и могут быть вызваны только из того модуля, в котором они объявлены. Они недоступны из других модулей и внешних приложений.
Пример Private процедуры:
Private Sub МояПриватнаяПроцедура()
' Код приватной процедуры
MsgBox "Моя Приватная Процедура"
End Sub
Попытка вызвать Private процедуру из другого модуля приведет к ошибке.
Теперь рассмотрим различные способы вызова и выполнения процедур Sub в VBA.
1. Команда Run Sub/UserForm
2. Запуск процедур с помощью диалогового окна "Макрос"
3. Выполнение процедуры Sub с использованием горячих клавиш
4. Вызов процедуры Sub с помощью ленты
5. Вызов процедуры Sub из пользовательского контекстного меню
6. Вызов процедуры Sub из другой процедуры
7. Выполнение процедуры Sub по щелчку на объекте
8. Выполнение процедуры Sub по событию
9. Выполнение процедуры Sub в окне отладки
Запуск процедур с помощью команды Run Sub/UserForm
Чтобы выполнить процедуру с помощью команды "Run Sub/UserForm", следуйте этим шагам:
Шаг 1: Откройте VBA Editor
Откройте редактор VBA в приложении, в котором вы хотите выполнить вашу процедуру (например, Excel). Это можно сделать, нажав ALT + F11.
Шаг 2: Выберите процедуру
Выберите модуль, в котором находится ваша целевая процедура. Затем выберите саму процедуру.
Шаг 3: Запустите команду Run Sub/UserForm
Запуск процедур с помощью диалогового окна "Макрос"
Вы можете вызвать процедуры Sub из диалогового окна "Макрос". Просто выберите процедуру из списка доступных макросов и нажмите "Запуск". Это полезно, если вы хотите выполнить процедуру без необходимости вводить ее вручную.
В следующей статье рассмотрим другие способы вызова и выполнения процедур Sub в VBA.