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

VBA Excel № 58.2 Запуски процедур в VBA.

Оглавление
Скриншот с моего ноутбука
Скриншот с моего ноутбука

Продолжим рассматривать способы вызова и выполнения процедур Sub в VBA.

1. Вызов процедуры Sub из другой процедуры
2. Выполнение процедуры Sub по щелчку на объекте
3. Выполнение процедуры Sub по событию
4. Выполнение процедуры Sub в окне отладки (см. статью №48)

Вызов процедуры Sub из другой процедуры:

Один из наиболее распространенных способов выполнения процедуры Sub - это вызов ее из другой процедуры. Это позволяет вам структурировать код, разделять его на более мелкие блоки и избегать дублирования кода.

Пример вызова процедуры Sub из другой процедуры:

  1. Sub ПерваяПроцедура()
  2. ' Код первой процедуры
  3. ВтораяПроцедура ' Вызов второй процедуры
  4. End Sub

  1. Sub ВтораяПроцедура()
  2. ' Код второй процедуры
  3. End Sub
Скриншот с моего ноутбука
Скриншот с моего ноутбука

Скриншот с моего ноутбука
Скриншот с моего ноутбука

В этом примере есть две процедуры Sub: ПроцедураА и ПроцедураБ. Для вызова ПроцедурыА из ПроцедурыБ следуйте этим шагам:

  1. ПроцедураБ начинает выполнение и выводит сообщение "Процедура Б начала выполнение."
  2. Затем, с использованием ПроцедураА, вызывается Процедурой А.
  3. ПроцедураА выполняется и выводит сообщение "Процедура А была вызвана."
  4. После выполнения ПроцедурыА, управление возвращается в ПроцедуруБ, которая выводит сообщение "Процедура Б завершила выполнение."

Таким образом, вызов ПроцедурыА из ПроцедурыБ происходит внутри кода ПроцедурыБ. Вы можете вызывать процедуры внутри других процедур в зависимости от вашей логики и потребностей, и это позволяет структурировать ваш код более эффективно, избегать повторения одного и того же кода и улучшать читаемость и обслуживаемость вашего проекта VBA.

Выполнение процедуры Sub по щелчку на объекте (к тому также можно отнести и Выполнение процедуры Sub по событию)

Для выполнения процедуры Sub по щелчку на объекте, таком как кнопка, изображение или другой элемент управления в приложениях Microsoft Office (например, Excel или Word), вы можете использовать обработчики событий. Вот как это можно сделать:

1. Создание объекта (например, кнопки) на листе:

В Excel или Word, создайте объект, на который пользователь будет кликать. Например, вы можете добавить кнопку с помощью элемента управления ActiveX или добавить изображение.

2. Назначение макроса (процедуры Sub) объекту:

- Выделите объект, на который пользователь будет кликать.

- Перейдите во вкладку "Разработчик" (Developer) (если у вас нет этой вкладки, ее можно активировать в настройках Excel или Word).

- В вкладке "Разработчик," выберите "Вставка" (Insert) и добавьте соответствующий элемент управления (например, кнопку ActiveX или изображение).

- Правой кнопкой мыши щелкните на этом элементе и выберите "Свойства" (Properties).

- В окне "Свойства," найдите свойство "щелчок" (OnAction) и введите имя вашей процедуры Sub, которую вы хотите выполнить по щелчку на объекте.

3. Создание процедуры Sub для выполнения:

Создайте процедуру Sub в вашем VBA-проекте. Например:

  1. Sub МояПроцедура()
  2. ' Код вашей процедуры
  3. MsgBox "Процедура выполнена!"
  4. End Sub

4. Запустите выполнение макроса:

Теперь, когда пользователь щелкает на объекте, который вы создали, процедура Sub "МояПроцедура" будет выполнена, и в данном случае, отобразит сообщение "Процедура выполнена!"

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Наука
7 млн интересуются