Найти тему
VBA Excel с нуля

VBA Excel № 58. Область действия и выполнение процедуры Sub в VBA.

В этой статье мы рассмотрим два основных типа процедур: 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.
Наука
7 млн интересуются