Урок 6 по vba - константи

Крім змінних, в коді мови VBA можна використовувати константи. Константи VBA - це по суті ті ж змінні, але тут відбувається привласнення значення один раз. Якщо ви надасте константі значення 100, то змінити його вже не зможете.

Урок 6 по vba - константи

Використання констант VBA актуально в наступних випадках:

  • Якщо в коді часто використовується одне значення, наприклад, код кольору, або параметри компонента.
  • Універсальність - ви можете в одному рядку відразу прописати ідентифікатор, призначити тип даних і привласнити потрібне значення.
  • Пошук і виправлення - не треба пробігати по всьому коду в пошуках даних для виправлення.

У більшості випадків імена констант прописують великими літерами, щоб відрізняти їх від імен змінних, наприклад:

Іменовані константи VBA

Мова VBA, втім, як і VBScript або Visual Basic надають користувачеві готовий набір статичних значень, так званих - іменованих констант. Їх відмітною особливістю є префікс "vb". Ви можете завантажити довідник у форматі PDF. в якому я зібрав опис іменованих констант.

Добре, тепер давайте напишемо невеликий приклад ...

Тут ми прописали процедуру. в якій вказали, що при запуску макросу потрібно показати створену раніше форму.

Зовнішній вигляд форми наступний: на поверхні форми додайте вісім текстових міток (об'єкт Label) і одне текстове поле (об'єкт TextBox).

Урок 6 по vba - константи

Давайте розберемо код VBA ....

Процедура ColorList - тут відбувається завдання початкових значень для текстових міток, а саме, ми визначаємо розмір тексту (властивість FontSize), колір тексту (властивість ForeColor) і текст мітки (властивість Caption). Зверніть увагу, що колір тексту я прописав не у вигляді цифр, а у вигляді літеральних констант VBA (vbBlack, vbRed і так далі).

Процедура ConstantList - тут ми прописуємо власні константи VBA. Всі вони типу String і містять назву дня тижня. У властивості MultiLine об'єкта TextBox ми прописали значення true, що визначає текстове поле як многострочное. У властивість Text відбувається запис вмісту наших констант, при чому, не в один рядок, а кожне значення з нової, за переклад рядка відповідає константа VBA vbCrLf.

Процедура UserForm_Initialize - дана процедура викликається при ініціалізації (завантаженні) форми, в ній просто йде виклик попередніх двох процедур.

Схожі статті