Как присвоить значение глобальной переменной VBA?

Как присвоить значение глобальной переменной VBA при открытии формы и далее изменять её значение при нажатии кнопки? Вторую часть вопроса знаю как сделать. Заранее спасибо.

Если подробнее, то есть счётчик, значение которого надо определить вне процедуры нажатия кнопки.

Public counter As Long
Set (counter, 1) ' counter=1

...
Public Sub ButtonAdd_Click()
counter = counter+1
End Sub

Ответы (1 шт):

Автор решения: rotabor

В VBA глобальные переменные можно объявить в модуле проекта, но нельзя в модуле рабочего листа, книги или формы. Присваивать им значения и читать значения как обычно. введите сюда описание изображения Переменные, объвленные как 'Public' в модуле рабочего листа, книги или формы, являются членами (полями) соответствующих объектов, и доступ к ним только через имя объекта, причём форму нужно предварительно загрузить командой 'Load'.

P. S.

Private Sub UserForm_Initialize()
  counter = 3
End Sub

введите сюда описание изображения

Тут два варианта: при открытии книги или при инициализации формы

→ Ссылка