Переменные, типы данных и константы VBA в Excel

⚡ Умное резюме

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

  • 📦 Переменная: Именованное значение, хранящееся в памяти, которое код сохраняет, а затем считывает обратно.
  • 🔤 Правила именования: Имя должно содержать менее 255 символов, не содержать пробелов, не начинаться с цифры и не содержать точки.
  • ✍️ Декларация: Ключевое слово Dim явно объявляет переменную, например, Dim Num As Integer.
  • 🔢 Числовые типы: Байт, Целое число, Длинный ряд, Одиночный номер, DoubleВалюта и десятичная система счисления различаются по объему хранения и диапазону значений.
  • 🔠 Нечисловые типы: Типы данных String, Boolean, Date, Object и Variant содержат текст, значения true или false, даты и объекты.
  • 🔒 Постоянный: Ключевое слово Const объявляет значение, которое нельзя изменить, например, Const DaysInYear = 365.

Переменные, типы данных и константы VBA в Excel

Переменные используются практически во всех компьютерных программах, и VBA не является исключением. Хорошей практикой является объявление переменной в начале процедуры. Это не обязательно, но помогает определить характер контента (текст, данные, числа и т. д.).

Переменные VBA

Переменные — это определенные значения, которые хранятся в памяти компьютера или системе хранения. Later, вы можете использовать это значение в коде и выполнить. Компьютер получит это значение из системы и отобразит его на выходе. Каждому типу переменных Excel VBA должно быть присвоено имя.

Чтобы назвать переменную в VBA, вам необходимо следовать следующим правилам.

  • Оно должно быть меньше 255 символов.
  • Никакие пробелы не допускаются
  • Оно не должно начинаться с цифры
  • Период не разрешен

Вот несколько примеров допустимых и недопустимых имен переменных в VBA.

Переменные VBA Допустимые имена Переменные VBA Недопустимые имена
Мои часы Мои часы
НовыйАвтомобиль1 1_NewCar (не начинается с номера)
ID сотрудника Идентификатор сотрудника (пробел не допускается)

In VBAнам необходимо объявить переменные перед их использованием, присвоив им имена и типы данных.

В VBA переменные объявляются неявно или явно.

  • Неявно: Ниже приведен пример переменной, объявленной неявно.
  • метка = гуру99
  • объем = 4
  • эксплицитно: Ниже приведен пример переменной, объявленной явно. Вы можете использовать ключевое слово «Dim» в синтаксисе.
  • Тусклый Число как целое число
  • Тусклый пароль как строка

Переменная VBA ничем не отличается от других языков программирования. Чтобы объявить переменную в VBA, вы используете ключевое слово «Дим».

Синтаксис переменной VBA,

Чтобы объявить переменную в VBA, введите Dim, а затем имя:

Sub Exercise ()
        Dim <name>
End Sub

Прежде чем мы выполним переменные, мы должны записать макрос в Excel. Чтобы записать макрос, сделайте следующее –

Шаг 1): Запись макроса 1

Шаг 2) : Остановить макрос 1

Шаг 3): Откройте редактор макросов, введите код переменной в поле Macro1.

Шаг 4): Выполните код для макроса 1

Пример для переменной VBA

Sub Macro1()
	Dim Num As Integer
	Num = 99
	MsgBox " Guru " & Num
End Sub

Когда вы запустите этот код, вы получите следующий результат на своем листе.

Переменные VBA

Типы данных Excel VBA

Компьютер не может различать числа (1,2,3..) и строки (a,b,c,..). Чтобы провести это различие, мы используем типы данных.

Типы данных VBA можно разделить на два типа.

  • Числовые типы данных
Тип Память Диапазон значений
Байт 1 байт 0 - 255
Целое 2 байт -32,768 в 32,767
Длинное 4 байт -2,147,483,648 в 2,147,483,648
Один 4 байт От -3.402823E+38 до -1.401298E-45 для отрицательных значений от 1.401298E-45 до 3.402823E+38 для положительных значений.
Double 8 байт От -1.79769313486232e+308 до -4.94065645841247E-324 для отрицательных значений.
От 4.94065645841247E-324 до 1.79769313486232e+308 для положительных значений.
Валюта 8 байт -922,337,203,685,477.5808 в 922,337,203,685,477.5807
Десятичная дробь 12 байт +/- 79,228,162,514,264,337,593,543,950,335 7.9228162514264337593543950335 28 XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX, если десятичная дробь не используется, используйте +/- XNUMX (XNUMX десятичных знаков)
  • Нечисловые типы данных
Тип данных Использовано байтов Диапазон значений
Строка (фиксированная длина) Длина строки От 1 до 65,400 символов
Строка (переменной длины) Длина + 10 байт от 0 до 2 миллиардов символов
Логический 2 байт Правда или ложь
Время 8 байт Январь 1, 100 до декабря 31, 9999
объект 4 байт Любой встроенный объект
Вариант (числовой) 16 байт Любое значение, равное Double
Вариант(текст) Длина+22 байта То же, что и строка переменной длины.

В VBA, если тип данных не указан, переменная будет автоматически объявлена ​​как вариант.

Давайте посмотрим пример объявления переменных в VBA. В этом примере мы объявим три типа строковых переменных: дату соединения и валюту.

Шаг 1) Как и в предыдущем уроке, мы вставим команду CommandButton1 в нашу Лист Excel.

Типы данных Excel VBA

Шаг 2) На следующем шаге щелкните правой кнопкой мыши кнопку и выберите «Просмотреть код». Откроется окно кода, как показано ниже.

Типы данных Excel VBA

Шаг 3) На этом этапе

  • Сохраните файл, нажав кнопку «Сохранить». Типы данных Excel VBA
  • Затем нажмите значок Excel Типы данных Excel VBA в том же окне, чтобы вернуть лист Excel.
  • Вы можете видеть, что режим проектирования «включен» выделен зеленым цветом.

Типы данных Excel VBA

Шаг 4) Выключите режим дизайна перед нажатием командной кнопки.

Типы данных Excel VBA

Шаг 5) После выключения режима дизайна вы нажмете кнопку CommandButton1. Он покажет следующую переменную в качестве выходных данных для диапазона, который мы объявили в коде.

  • Имя
  • Дата вступления
  • Доход в валюте

Типы данных Excel VBA

Константа в VBA

Константа похожа на переменную, но вы не можете ее изменить. Чтобы объявить константы VBA, вы можете использовать ключевое слово Const.

Существует два типа констант:

  • Встроенный или встроенный в приложение.
  • Символический или определяемый пользователем

Вы можете указать область как частная по умолчанию или что такое варган?. Например,

Публичная константа DaysInYear=365

Частная константа рабочих дней = 250

Загрузите Excel, содержащий приведенный выше код.

Скачайте указанный выше файл Excel. Code

Область действия переменных и явное указание параметров

Место объявления переменной определяет, где её можно использовать, и одна небольшая настройка в начале модуля предотвращает большинство подобных случаев.ping ошибки. Понимание обоих аспектов обеспечивает надежность развивающейся программы.

Ключевое слово Объем Вечного пользования
Приглушение (внутри сабвуфера) Только в той процедуре, в которой это заявлено. Сбрасывайте настройки каждый раз при запуске процедуры.
статический Сохраняется только процедура, но значение. Вспомнилось между звонками
Приватный (в верхней части модуля) Каждая процедура в этом модуле Живёт, пока открыта рабочая тетрадь.
Общедоступный (в верхней части модуля) Каждый модуль в проекте Живёт, пока открыта рабочая тетрадь.

💡 Совет: Тип Вариант Явный в качестве первой строки каждого модуля. Это заставляет объявлять каждую переменную с помощью Dim, поэтому ошибка в имени обнаруживается во время компиляции, а не приводит к молчаливому созданию нового пустого объекта Variant.

Часто задаваемые вопросы (FAQ)

Переменная хранит значение, которое код может изменять во время выполнения. Константа хранит значение, которое является фиксированным (Const) и не может быть изменено. Используйте константу для значения, которое никогда не меняется, например, для налоговой ставки.

Тип данных Integer хранит значения только от -32 768 до 32 767, поэтому при увеличении количества строк или большого числа значение переполнится. Тип данных Long хранит гораздо большие значения, и Microsoft В современном VBA для работы с целыми числами теперь рекомендуется использовать тип данных Long.

Если тип не указан, по умолчанию используется тип Variant. Он может содержать число, текст, дату или объект, что делает его более гибким, но требует больше памяти и работает медленнее. По возможности указывайте конкретный тип.

Да. Искусственный интеллект-помощники в программировании считывают, как используется переменная, и предлагают подходящий тип, например, Long для счетчика или String для текста. Разработчик подтверждает выбор и добавляет параметр Option Explicit.

Да. Искусственный интеллект-помощники отмечают неправильно написанную или необъявленную переменную, объясняют, почему Option Explicit сообщает об этом, и предлагают правильное объявление. Разработчик применяет исправление и перекомпилирует модуль.

Подведем итог этой публикации следующим образом: