Зміннівикористовуються для тимчасового зберігання даних в оперативній пам’яті, тобто вони ідентифікують область пам’яті, де зберігається деяка інформація. Після того, як змінна оголошена, вона вказує на одну і ту саму область пам’яті. VBA дозволяє оголошувати змінні двома способами: явно і неявно.
Явне оголошення змінної означає, що змінна повинна бути оголошена раніше ніж її буде використано. Оголосити змінну означає задати її ім’я та тип для того, щоб виділити для неї необхідну область пам’яті.
Явно змінну можна оголосити одним з наступних способів:
Dim <Ім’яЗмінної1> [As <Тип>][, Ім’яЗмінної2 [As <Тип>]]…
Public <Ім’яЗмінної1> [As <Тип> ][, Ім’яЗмінної2 [As <Тип>]]…
Dim - ключове слово для оголошення змінних (від dimention – розмір)
Static – ключове слово, яке вказує, що оголошена змінна є статичною, тобто такою, яка зберігає своє значення при виході з процедури. Значення змінної зберігається весь час доки існує в пам’яті форма або модуль.
Наприклад:
Dim N As Integer –після виконання цієї команди змінній N буде відведено 2 байти пам’яті.
Dim x - у даному випадку відсутній тип даних. Це означає, що змінна за замовчуванням отримує тип Variant (аналог загального формату в Excel, тобто VBA сам буде визначати тип змінної, коли вона з’явиться в програмі. Наприклад, якщо в програмі записано команду х = 5, то VBA присвоїть x тип Integer або Long).
Явне оголошення змінних має свої переваги. Воно більш надійне, дозволяє краще читати програму, прискорює роботу (VBA не потрібно кожного разу розпізнавати тип змінної, що зустрічається), а головне допомагає на етапі компіляції знайти помилки в програмі, які дуже важко знайти, у випадку, коли змінні не оголошуються.
Для того щоб всі змінні в модулі оголошувалися явно на його початку в так званій області модуля (General Declarations) необхідно помістити інструкцію Option Explicit. Використання цієї інструкції не допускає неправильного вводу імені змінної, яка використовується в одній або декількох процедурах модуля.