Разное

Встроенные типы данных vba: Сводка типов данных | Microsoft Learn

Сводка типов данных | Microsoft Learn

Twitter LinkedIn Facebook Адрес электронной почты

  • Статья
  • Чтение занимает 3 мин

Тип данных — это характеристика переменной, определяющая тип содержащихся в ней данных. К типам данных относятся типы, указанные в таблице ниже, а также пользовательские типы и определенные типы объектов.

Набор встроенных типов данных

В следующей таблице показываются поддерживаемые типы данных, включая размеры хранилищ и диапазоны.

Тип данныхРазмер хранилищаДиапазон
Boolean2 байтаTrue или False
Byte1 байтот 0 до 255
CollectionНеизвестноНеизвестно
Currency (масштабируемое целое число)8 байтот –922 337 203 685 477,5808 до 922 337 203 685 477,5807
Date8 байтот 1 января 100 г. до 31 декабря 9999 г.
Decimal14 байт+/–79 228 162 514 264 337 593 543 950 335 без десятичной запятой

+/–7,9228162514264337593543950335 с 28 разрядами справа от десятичной запятой

Наименьшее ненулевое число равно +/–0,0000000000000000000000000001

DictionaryНеизвестноНеизвестно
Double (число с плавающей запятой двойной точности)8 байтот –1,79769313486231E308 до –4,94065645841247E-324 для отрицательных значений

от 4,94065645841247E-324 до 1,79769313486232E308 для положительных значений

Integer2 байтаот –32 768 до 32 767
Long (целое число Long)4 байтаот –2 147 483 648 до 2 147 483 647
LongLong (целое число LongLong)8 байтот –9 223 372 036 854 775 808 до 9 223 372 036 854 775 807

Действительно только для 64-разрядных платформ.

LongPtr (целое число Long в 32-разрядных системах, целое число LongLong в 64-разрядных системах)4 байта в 32-разрядных системах

8 байт в 64-разрядных системах

от –2 147 483 648 до 2 147 483 647 в 32-разрядных системах

от –9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 в 64-разрядных системах

Object4 байтаЛюбая ссылка на Object
Single (число с плавающей запятой одинарной точности)4 байтаот –3,402823E38 до –1,401298E-45 для отрицательных значений

от 1,401298E-45 до 3,402823E38 для положительных значений

String (переменная длина) 10 байтов + длина строкиот 0 до приблизительно 2 миллиардов
String (фиксированная длина)Длина строкиот 1 до приблизительно 65 400
Variant (с числами)16 байтЛюбое числовое значение до диапазона типа Double
Variant (с символами)22 байта + длина строки (24 байтов в 64-разрядных системах)Тот же диапазон как для типа String переменной длины
Определяется пользователем (используя Type)Число, необходимое для элементовДиапазон каждого элемента совпадает с диапазоном его типа данных.

Тип Variant, содержащий массив, требует на 12 байт больше, чем сам массив.

Примечание

Для массивов данных любого типа требуются 20 байтов памяти плюс 4 байта на каждую размерность массива, плюс количество байтов, занимаемых самими данными. Память, занимаемая данными, может быть вычислена путем умножения количества элементов данных на размер каждого элемента.

Например, данные в одномерном массиве, состоящем из 4 элементов данных Integer размером 2 байта каждый занимают 8 байтов. 8 байтов, необходимых для данных, плюс 24 байта служебных данных составляют 32 байта полной памяти, требуемой для массива. На 64-разрядных платформах массив SAFEARRAY занимает 24 бита (плюс 4 байта на оператор Dim). Элемент pvData является 8-байтным указателем, и он должен находиться в границах 8 байтов.

Примечание

Тип LongPtr не является настоящим типом данных, так как он преобразуется в тип Long в 32-разрядных средах или в тип LongLong в 64-разрядных средах.

Тип LongPtr должен использоваться для представления указателя и обработки значений в операторах Declare и позволяет писать переносимый код, который может выполняться как в 32-разрядных, так и в 64-разрядных средах.

Примечание

Для преобразования одного типа строковых данных в другой используется функция StrConv.

Преобразование между типами данных

В статье Функции преобразования типов приведены примеры использования следующих функций для приведения выражения к определенному типу данных: CBool, CByte, CCur, CDate, CDbl, CDec, CInt, CLng, CLngLng, CLngPtr, CSng, CStr и CVar.

Ниже приведены страницы соответствующих функций: CVErr, Fix и Int.

Примечание

Функция CLngLng действительна только для 64-разрядных платформ.

Проверка типов данных

Чтобы проверить типы данных, ознакомьтесь с приведенными ниже функциями.

  • IsArray
  • IsDate
  • IsEmpty
  • IsError
  • IsMissing
  • IsNull
  • IsNumeric
  • IsObject

Возвращаемые значения функции CStr

Если expressionCStr возвращает
BooleanСтрока, содержащая значение True или False.
DateСтрока, содержащая полный или краткий формат даты, установленный в системе.
EmptyСтрока нулевой длины («»).
ErrorСтрока, содержащая слово Error и номер ошибки.
NullОшибка во время выполнения.
Другое числовое значениеСтрока, содержащая число

См. также

  • Константы VarType
  • Ключевые слова по задачам
  • Справочник по языку Visual Basic

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

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

Справочная таблица по встроенным типам данных VBA Excel. Функция TypeName, возвращающая тип данных переменной. Оператор Option Explicit в начале модуля.

Встроенные типы данных

Встроенные типы данных VBA Excel:

Тип данныхБайты*Диапазон значений
Byte1Целые числа:
от 0 до 255
Boolean2True (Истина) или False (Ложь)
Integer2Целые числа:
от -32768 до 32767
Long4Целые числа:
от -2147483648 до 2147483647
Single4Отрицательные числа:
от -3,402823Е+38 до -1,401298Е-45
Положительные числа:
от 1,401298Е-45 до 3,402823Е+38
Double8Отрицательные числа:
от -1,79769313486232Е+308
до -4,94065645841247Е-324
Положительные числа:
от 4,94065645841247Е-324
до 1,79769313486232Е+308
Currency8от -922337203685477,5808
до 922337203685477,5807
Date8с 1 января 100 года
по 31 декабря 9999 года
Object4Ссылка на объект
String
(переменной длины)
10 + длина строкиот 0 до ≈2 млрд символов
String
(фиксированной длины)
длина строкиот 1 до ≈65400 символов
Variant
(числа)
16В пределах диапазона типа
данных Double
Variant
(символы)
22 + длина строкиот 0 до ≈2 млрд символов

Дополнительно для VBA7:

Тип данныхБайты*Диапазон значений
LongLong8Целые числа:
от –9 223 372 036 854 775 808
до 9 223 372 036 854 775 807
Доступен только в 64-разрядных системах.
LongPtr4 или 8В 32-разрядных системах соответствует типу Long:
от -2147483648 до 2147483647,
в 64-разрядных — типу LongLong:
от –9 223 372 036 854 775 808
до 9 223 372 036 854 775 807

*Резервируется память в байтах на каждую переменную соответствующего типа.

Тип данных Variant может принимать специальные значения: Empty, Error, Nothing и Null.

Кроме встроенных типов данных VBA Excel позволяет использовать пользовательские типы, создаваемые с помощью оператора Type. Диапазон значений пользовательского типа данных определяется встроенными типами, из которых он состоит.

Переменные с типами данных Byte, Boolean, Integer, Long, Single и Double можно объявлять с помощью суффиксов.

Функция TypeName

TypeName – это функция, возвращающая значение типа String с информацией о переменной.

Чаще всего, функция TypeName возвращает наименование типа данных аргумента (значения), содержащегося в переменной. Кроме наименований встроенных типов данных, функция TypeName может возвращать следующие значения:

ЗначениеОписание
Collection, Dictionary, Range, Worksheet и т.д.Тип известного объекта, ссылка на который содержится в объектной переменной
ErrorПеременная содержит значение ошибки
EmptyНеинициализированное значение
NullОтсутствие допустимых данных
UnknownОбъект, тип которого неизвестен
NothingОбъектная переменная, которая не ссылается на объект

Если переменная объявлена с числовым типом данных или String, функция TypeName возвратит наименование этого типа данных. Если переменная объявлена с типом данных Variant или Object, возвращаемое значение будет зависеть от содержимого переменной.

Пример:

1

2

3

4

5

6

7

8

9

10

11

12

Sub Primer()

Dim a As Single, b As Date, c As Variant

    MsgBox «a As Single:  » & TypeName(a)  ‘Single

    MsgBox «b As Date:  » & TypeName(b)  ‘Date

    MsgBox «c As Variant:  » & TypeName(c)  ‘Empty (значение не инициализировано)

c = 1. 236

    MsgBox «c = 1.236:  » & TypeName(c)  ‘Double

Set c = Cells(1, 1)

    MsgBox «Set c = Cells(1, 1):  » & TypeName(c)  ‘Range (тип объекта)

Set c = Worksheets(1)

    MsgBox «Set c = Worksheets(1):  » & TypeName(c)  ‘Worksheet (тип объекта)

End Sub

Оператор Option Explicit

VBA Excel допускает использование в коде как объявленных, так и необъявленных переменных. Необъявленным переменным присваивается тип данных Variant и они могут принимать все допустимые значения, свойственные этому типу.

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

Чтобы избежать ошибок при работе с переменными используется оператор Option Explicit. Он указывает на то, что все переменные в модуле должны быть объявлены с помощью ключевого слова Dim или ReDim. В этом случае, если компилятор обнаружит строку с необъявленной переменной, то сгенерирует ошибку и выделит эту переменную.

Размещается оператор Option Explicit в самом начале модуля перед всеми остальными операторами. Чтобы каждый раз не вставлять его вручную и, тем более, не забыть о нем, можно настроить редактор VBA Excel, чтобы он автоматически добавлял Option Explicit при создании нового модуля.

Настройка автоматического добавления Option Explicit

1. Откройте окно Options через вкладку меню Tools:

2. Отметьте галочкой опцию Require Variable Declaration на вкладке Editor:

3. Теперь новый модуль открывается со строкой Option Explicit:


Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.

Сводка типов данных | Microsoft Узнайте

Редактировать

Твиттер LinkedIn Фейсбук Электронное письмо

  • Статья
  • 3 минуты на чтение

Тип данных — это характеристика переменной, которая определяет, какие данные она может содержать. Типы данных включают те, что указаны в следующей таблице, а также определяемые пользователем типы и определенные типы объектов.

Установить встроенные типы данных

В следующей таблице показаны поддерживаемые типы данных, включая размеры и диапазоны хранения.

Тип данных Размер хранилища Диапазон
Логический 2 байта Верно или Ложно
Байт 1 байт от 0 до 255
Коллекция Неизвестно Неизвестно
Валюта (масштабированное целое число) 8 байт -922 337 203 685 477,5808 до 922 337 203 685 477,5807
Дата 8 байт С 1 января 100 г. по 31 декабря 9999 г.
Десятичный 14 байт +/-79 228 162 514 264 337 593 543 950 335 без десятичной точки

+/-7,9228162514264337593543950335 с 28 знаками справа от запятой

Наименьшее ненулевое число +/-0,00000000000000000000000000001

Словарь Неизвестно Неизвестно
Double (двойная точность с плавающей запятой) 8 байт от -1,79769313486231E308 до -4,94065645841247E-324 для отрицательных значений

4,94065645841247E-324 до 1,79769313486232E308 для положительных значений

Целое число 2 байта от -32 768 до 32 767
Длинное (Длинное целое) 4 байта -2 147 483 648 до 2 147 483 647
LongLong (целое LongLong) 8 байт От -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807

Допустимо только на 64-разрядных платформах.

LongPtr (длинное целое число в 32-разрядных системах, длинное целое число в 64-разрядных системах) 4 байта в 32-битных системах

8 байтов в 64-битных системах

от -2 147 483 648 до 2 147 483 647 в 32-разрядных системах

от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 в 64-разрядных системах

Объект 4 байта Любой Объект ссылка
Single (с плавающей запятой одинарной точности) 4 байта от -3.402823E38 до -1.401298E-45 для отрицательных значений

1.401298E-45 до 3.402823E38 для положительных значений

Строка (переменной длины) 10 байт + длина строки от 0 до примерно 2 миллиардов
Строка (фиксированной длины) Длина строки от 1 до примерно 65 400
Вариант (с номерами) 16 байт Любое числовое значение в диапазоне Double
Вариант (с символами) 22 байта + длина строки (24 байта в 64-разрядных системах) Тот же диапазон, что и для переменной длины Строка
Определяется пользователем (с использованием типа ) Количество, необходимое для элементов Диапазон каждого элемента совпадает с диапазоном его типа данных.

Для варианта , содержащего массив, требуется на 12 байт больше, чем для одного массива.

Примечание

Для массивов данных любого типа требуется 20 байтов памяти плюс 4 байта для каждого измерения массива плюс количество байтов, занимаемых самими данными. Память, занимаемая данными, может быть рассчитана путем умножения количества элементов данных на размер каждого элемента.

Например, данные в одномерном массиве, состоящем из 4 Integer элементов данных по 2 байта каждый, занимают 8 байт. 8 байтов, необходимых для данных, плюс 24 байта служебных данных, увеличивают общую потребность в памяти для массива до 32 байтов. На 64-битных платформах SAFEARRAY занимает 24 бита (плюс 4 байта на оператор Dim). Элемент pvData представляет собой 8-байтовый указатель, и он должен быть выровнен по 8-байтовым границам.

Примечание

LongPtr не является истинным типом данных, поскольку он преобразуется в Long в 32-разрядных средах или в LongLong в 64-разрядных средах. LongPtr следует использовать для представления значений указателя и дескриптора в операторах Declare и позволяет писать переносимый код, который может работать как в 32-разрядных, так и в 64-разрядных средах.

Примечание

Используйте функцию StrConv для преобразования одного типа строковых данных в другой.

Преобразование между типами данных

См. Функции преобразования типов для примеров использования следующих функций для приведения выражения к определенному типу данных: CBool ​​ , CByte , CCur , CDate , CDbl , CDec 8 , 3 , CLng , CLngLng , CLngPtr , CSng , CStr и CVar .

Для следующего см. соответствующие страницы функций: CVErr , Fix и Целое число .

Примечание

CLngLng допустимо только на 64-разрядных платформах.

Проверка типов данных

Для проверки типов данных см. следующие функции:

  • IsArray
  • ИсДате
  • пусто
  • Ошибка
  • Отсутствует
  • Иснулл
  • Иснумерик
  • Объект

Возвращаемые значения для CStr

Если выражение равно Cstr возвращает
Логический Строка, содержащая True или False .
Дата Строка, содержащая дату в кратком формате вашей системы.
Пустой Строка нулевой длины («»).
Ошибка Строка, содержащая слово Error , за которым следует номер ошибки.
Нуль Ошибка выполнения.
Другие числовые Строка, содержащая число.

См. также

  • Константы VarType
  • Ключевые слова по задаче
  • Справочник по языку Visual Basic

Поддержка и отзывы

У вас есть вопросы или отзывы об Office VBA или этой документации? См. раздел Поддержка и отзывы Office VBA, чтобы узнать, как вы можете получить поддержку и оставить отзыв.

Типы переменных VBA в Excel

Очень важно знать, как эффективно понимать и использовать типы переменных VBA в Excel, чтобы ваш код работал правильно.

В этой статье мы объясним, что такое переменная, как использовать ее в коде VBA, а также рассмотрим различные типы данных Excel VBA.

Изучите лучшие сочетания клавиш Excel

Загрузите нашу памятку по ярлыкам для ПК и Mac, которую можно распечатать

Введите адрес электронной почты

Что такое переменная?

Переменная — это место в памяти вашего компьютера, которое вы определяете и затем используете для хранения значений. Это хранилище является временным, и значения очищаются, когда ваш макрос заканчивается.

Вы можете назвать переменную осмысленным и указать тип данных, которые она будет хранить. Затем вы можете получить доступ и изменить значение этой переменной столько раз, сколько захотите, в своем коде Excel VBA.

Константа аналогична, однако после инициализации хранимое в ней значение не может быть изменено в коде VBA.

Зачем используются переменные

Переменные имеют решающее значение для написания эффективного кода VBA. Вы можете присваивать значения переменной, а затем тестировать, изменять и записывать эту переменную во время выполнения макроса.

Хранение значений в физических контейнерах, таких как ячейки на листе, неэффективно, если вам нужно читать, записывать и изменять это значение несколько раз.

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

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

Объявление переменных в Excel VBA

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

Объявление переменной состоит из трех частей:

  1. Ключевое слово Dim
  2. Имя переменной
  3. Тип данных.

Объявления — это первые строки кода, которые вы видите в макросе Excel.

Код ниже объявляет четыре переменные. Каждая переменная объявляется в отдельной строке.

  Sub VariableExamples()

Dim companyID как строка
Dim companyName как строка
Dim numberOfProducts как целое число
Тусклый продуктЦена как двойная

End Sub  

При именовании переменной необходимо соблюдать некоторые правила (это те же правила, которые следует учитывать при именовании макросов).

  • Имя переменной не должно начинаться с цифры.
  • Нельзя использовать специальные символы, такие как %, &, ! или @ .
  • Вы не можете использовать пробелы.
  • Зарезервированное ключевое слово, такое как Dim , Public или Next , нельзя использовать. Эти зарезервированные слова важны для других операций VBA.

Рекомендуется определить тип данных для каждой из ваших переменных. Это определяет тип данных, которые будет хранить переменная.

Если тип переменной не определен, используется тип данных Variant. Это может обрабатывать любой тип данных, но занимает больше места для хранения.

Существует несколько распространенных типов переменных VBA, которые вы будете часто видеть и использовать. Это:

  • Строка для хранения текстовых значений.
  • Long и Integer для хранения целых чисел.
  • Двойной для хранения чисел с десятичными знаками.
  • Булево значение для хранения значений ИСТИНА и ЛОЖЬ.
  • Объект для хранения объектов VBA, таких как рабочие листы и диаграммы.

Если у вас есть несколько переменных одного типа данных, вы можете объявить их в одной строке.

В приведенном ниже коде два типа переменных String объявлены в одной строке.

  Sub VariableExamples()

Dim companyID, companyName как строка
Dim numberOfProducts как целое число
Тусклый продуктЦена как двойная

Конец суб  

Типы данных VBA

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

Например, обратите внимание, что тип данных Integer может хранить только значения до 32 767. Таким образом, если вы используете переменную для хранения больших значений, таких как номера строк, тип данных Long будет более подходящим.

Это полезная таблица для справки, когда вы привыкнете к типам переменных VBA.

 

Тип данных

Сохранено

Диапазон значений

Байт

1 байт

от 0 до 255

Целое число

2 байта

от -32 768 до 32 767

Одноместный

4 байта

от -3.402823E38 до -1.401298E-45 для отрицательных значений, от 1.401298E-45 до 3.402823E38 для положительных значений

Длинный

4 байта

-2 147 483 648 до 2 147 483 648

Двойной

8 байт

от -1,79769313486232e+308 до -4,94065645841247E-324 для отрицательных значений, от 4,94065645841247E-324 до 1,79769313486232e+308 для положительных значений.

Десятичный

14 байт

+/-79 228 162 514 264 337 593 543 950 335 без десятичной точки, +/-7,9228162514264337593543950335 для 28 знаков справа от десятичной точки

Дата

8 байт

с 1 января 100 года по 31 декабря 9999

Валюта

8 байт

-922 337 203 685 477,5808 до 922 337 203 685 477,5807

Строка (переменной длины)

10 байт добавлено к длине строки

от 0 до 2 миллиардов символов

Строка (фиксированной длины)

длина строки

от 1 до примерно 65 400

Вариант (с номерами) 16 байт Любое числовое значение в диапазоне Double
Вариант (с символами) 22 байта + длина строки (24 байта в 64-битных системах) Тот же диапазон, что и для переменной длины Строка

Объект

4 байта

Объект в VBA

Логическое значение

2 байта

Верно или неверно

Использование переменных в коде VBA

После объявления переменной она инициализируется путем присвоения ей значения. Обычно это делается (если возможно) сразу после объявления.

В приведенном ниже коде показаны значения, присвоенные переменным.

  Sub VariableExamples()

Dim companyID как строка
Dim companyName как строка
Dim numberOfProducts как целое число
Тусклый продуктЦена как двойная

ID компании = Диапазон ("A2"). Значение
companyName = «Чипсы и соусы»
количество продуктов = ActiveSheet.UsedRange.Rows.Count
продуктЦена = 39.50

End Sub  

Здесь было продемонстрировано несколько различных методов.

  • Значение из ячейки было присвоено переменной ‘companyID’.
  • Обратите внимание, что при присвоении типам данных String необходимо использовать кавычки.
  • Результат количества строк в используемом диапазоне был присвоен переменной «numberOfProducts».

Затем переменные можно использовать в макросе по мере необходимости, а их значение можно изменить в любое время.

В этом списке полезных макросов для начинающих вы можете увидеть множество примеров использования переменных.

В приведенном ниже коде показан оператор IF, проверяющий значение ячейки. Если условие выполняется, значение переменной productPrice изменяется. Затем значение переменной присваивается ячейке.

Использование объектных переменных

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

Они могут быть объявлены как объектный тип данных.

  Sub ObjectExamples()

Dim wkSht как объект

End Sub  

Однако обычно они объявляются как объект определенного типа.

  Sub ObjectExamples()

Dim wbk как рабочая книга
Dim wkSht как рабочий лист
Dim rng as Range

End Sub  

При присвоении значений переменным объекта необходимо использовать ключевое слово Set.

  Sub ObjectExamples()

Dim wbk как рабочая книга
Dim wkSht как рабочий лист
Dim rng as Range

Установите wbk = Workbooks.Open("C:\Users\Admin\Desktop\Annual Sales. xlsx")
Установите wkSht = Листы («Март»)
Установите rng как wbk.Sheets(1).Range("A2")

Конец суб  

Здесь демонстрируется несколько различных методов:

  • Рабочая книга открывается и назначается переменной ‘wbk’ в том же операторе.
  • Затем переменная ‘wbk’ используется при назначении переменной ‘rng’ . Это избавляет нас от необходимости повторять имя рабочей книги.
  • Переменной ‘wkSht’ назначается определенный лист из открытой рабочей книги (это активная рабочая книга, поскольку она была открыта в предыдущем операторе).

Объектные переменные можно использовать в коде точно так же, как объект, который они представляют. Например, переменная ‘wkSht’ имеет все свойства и методы рабочего листа.

Эти переменные делают ссылки на объекты в коде более ясными и краткими.

Использование явного параметра

На самом деле нет необходимости объявлять переменные или определять типы данных VBA перед использованием переменных в коде. Однако рекомендуется явно объявлять ваши переменные, и вам настоятельно рекомендуется следовать этому правилу.

Эта практика имеет множество преимуществ:

  • Код стал более разборчивым. Другие знают, где найти ваши переменные и тип данных, которые они будут хранить. Это все декларируется заранее, а не создается на лету, вводя в заблуждение других и себя.
  • Макрос работает быстрее. Определяя типы переменных VBA, вы экономите место (в противном случае используется тип данных Variant), и вашему коду не нужно догадываться во время выполнения.
  • Легче устранить неполадки в коде. Если вы попытаетесь присвоить значение переменной, которая не соответствует набору типов данных VBA, появится ошибка несоответствия типа.

Использование Option Explicit принудительно объявляет переменные до того, как их можно будет использовать. Это хорошая идея.

Чтобы использовать Option Explicit, просто введите Option Explicit в верхней части окна кода.

Эта функция также может быть очень полезна при устранении неполадок кода. Если имя не распознано, отображается ошибка «Переменная не определена».

Это помогает обнаружить опечатки и переменные, которые вы забыли объявить.

Явный параметр — это параметр, который можно включить в редакторе Visual Basic. Это гарантирует, что Option Explicit автоматически добавляется в верхнюю часть окна кода.

Чтобы включить опцию Explicit:

  1. Щелкните Инструменты > Параметры
  2. Установите флажок Требовать объявление переменной на вкладке Редактор.

Область действия переменной

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

Все переменные, продемонстрированные в этой статье, были доступны для использования только в этом макросе или процедуре.

Это потому, что они были объявлены с ключевым словом Dim внутри этой процедуры. Когда макрос завершается, переменная удаляется из памяти.

Для переменной также может быть задана область действия модуля (доступная для использования любой процедурой в этом модуле) и область действия проекта (доступная для использования любой процедурой в этом проекте).

Переменные области модуля

Чтобы сделать переменную доступной для всех процедур внутри модуля, вы объявляете переменную в верхней части окна кода над процедурами и используете ключевое слово Dim.

По завершении процедуры переменная и ее значение сохраняются. Таким образом, если другая процедура использует эту переменную, она по-прежнему будет иметь значение, с которым она завершила работу ранее. Он освобождается из памяти только при закрытии проекта.

Переменные области проекта

Чтобы сделать переменную доступной для всех процедур проекта (обычно рабочей книги), она объявляется с ключевым словом Public вместо Dim.

Это также объявляется над всеми процедурами в верхней части любого окна кода в проекте.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *