Найти в Дзене
VBA Excel с нуля

VBA Excel № 57. Процедура в VBA.

Процедура на языке VBA представляет собой последовательность инструкций, расположенных в модуле, доступ к которому осуществляется через VBA. В одном модуле может содержаться несколько процедур, и каждая из них выполняется последовательно, начиная с первой инструкции и заканчивая последней. Нужно отметить, что процедуру можно прервать в любой момент выполнения. Совет: можно разбивать длинные процедуры на более мелкие, которые выполняют конкретные задачи. Затем можно создать основную процедуру, которая вызывает эти мелкие подпроцедуры. Это упрощает управление программой. Некоторые процедуры могут принимать аргументы, которые предоставляют информацию для выполнения задачи процедуры. Аргументы процедуры подобны аргументам функций в Excel. Процедуры могут выполнять операции над этими аргументами, и результат зависит от переданных значений. При объявлении процедуры с помощью ключевого слова Sub используется следующий синтаксис:
Скриншот с моего ноутбука
Скриншот с моего ноутбука

Процедура на языке VBA представляет собой последовательность инструкций, расположенных в модуле, доступ к которому осуществляется через VBA. В одном модуле может содержаться несколько процедур, и каждая из них выполняется последовательно, начиная с первой инструкции и заканчивая последней. Нужно отметить, что процедуру можно прервать в любой момент выполнения.

Совет: можно разбивать длинные процедуры на более мелкие, которые выполняют конкретные задачи. Затем можно создать основную процедуру, которая вызывает эти мелкие подпроцедуры. Это упрощает управление программой.

Некоторые процедуры могут принимать аргументы, которые предоставляют информацию для выполнения задачи процедуры. Аргументы процедуры подобны аргументам функций в Excel. Процедуры могут выполнять операции над этими аргументами, и результат зависит от переданных значений.

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

Скриншот с моего ноутбука
Скриншот с моего ноутбука
  • Private (необязательное ключевое слово) означает, что процедура доступна только в том же модуле.
  • Public (необязательное ключевое слово) позволяет доступ к процедуре из других модулей в рамках рабочей книги, если модуль не содержит директиву Option Private Module.
  • Static (необязательное ключевое слово) сохраняет переменные процедуры после ее завершения.
  • Sub (обязательное ключевое слово) обозначает начало процедуры.
  • имя - название процедуры.
  • список аргументов - переменные, содержащие аргументы, передаваемые в процедуру.
  • инструкции (необязательные) - корректные инструкции VBA.
  • Exit Sub (необязательная инструкция) позволяет выйти из процедуры до ее завершения.
  • End Sub (обязательная инструкция) указывает на завершение процедуры."