Оператор Let и присваивание переменным числовых, текстовых и других типов данных в VBA Excel. Синтаксис оператора Let, примеры использования.
Оператор Let в VBA Excel
В VBA Excel для назначения (присвоения) данных переменной есть два основных оператора: Let и Set. Let назначает простые типы данных, а Set — ссылки на объекты.
Большинство разработчиков VBA Excel ежедневно используют оператор Let, даже не подозревая об этом. В отличие от Set, который требует явного написания, Let работает «за кулисами», не являясь обязательным ключевым словом.
Let предназначен для присваивания значения (числа, строки, даты и т.д.) переменной или свойству. Это базовая конструкция языка, отвечающая за инициализацию переменных основных типов данных, исключая объектные типы.Ключевая особенность: оператор Let необязателен и в большинстве случаев опускается программистами. Синтаксически допустимы оба варианта записи:
|
1 2 |
Let x = 10 ' Явное использование Let x = 10 ' Неявное присваивание (Let опущен) |
В 95% случаев Let опускают. Явное написание имеет смысл только в трёх ситуациях:
- Обучающий код или документация — чтобы новички чётко видели разницу между присваиванием значений и ссылок на объекты.
- Сложные выражения с приведением типов для повышения читаемости.
- Поддержка устаревшего кода (legacy-кода), если в проекте принято явно писать
Letдля единообразия стиля.
Важно: Явное написание
Letне ускоряет макросы и не меняет логику компилятора. Это исключительно стилистический выбор.
Синтаксис оператора Let
|
1 |
[Let] имя_переменной = выражение |
Синтаксис оператора Let состоит из следующих элементов:
| Элемент | Описание |
|---|---|
Let |
Необязательное ключевое слово, явное использование которого считается вопросом стиля оформления кода. |
имя_переменной |
Обязательный параметр. Имя переменной или свойства, подчиняющееся стандартным правилам именования. |
выражение |
Обязательный параметр. Значение, которое присваивается переменной, и должно быть совместимо по типу данных с переменной. |
Какие данные требуют Let
Оператор Let необходим для переменных простых типов данных:
- Числовой:
Integer,Long,Single,Double,Currency,Byte. - Строковый:
String. - Логический:
Boolean. - Дата/время:
Date. - Универсальный:
Variant.
Для всех этих типов переменная хранит непосредственно значение, которое копируется при присваивании.
Явное и неявное использование Let
Пример 1
|
1 2 3 4 5 6 7 8 9 10 11 |
Sub LetExample() Dim MyStr, MyInt ' Явное использование Let Let MyStr = "Привет, мир!" Let MyInt = 42 ' Современный стандартный стиль (Let подразумевается) MyStr = "Привет, мир!" MyInt = 42 End Sub |
Оба способа записи присваивания значения переменным компилятор воспринимает абсолютно одинаково. Если вы не указываете ключевое слово Let, VBA автоматически подставляет его за вас.
Пример 2
|
1 2 3 4 5 6 |
Sub Пример2() Dim str1 As String, str2 As String Let str1 = "Травка зеленеет," & vbNewLine & "Солнышко блестит;" & vbNewLine str2 = "Ласточка с весною" & vbNewLine & "В сени к нам летит." MsgBox str1 & str2 End Sub |
Результат работы кода:
