Содержание
Оператор типа (VBA) | Microsoft Узнайте
Редактировать
Твиттер
Фейсбук
Эл. адрес
- Статья
- 2 минуты на чтение
Используется на уровне модуля для определения пользовательского типа данных, содержащего один или несколько элементов.
Синтаксис
[ Частный | Public ] Тип Varname ElementName [([ Подписки ])] AS Тип
[ elementName [[ ]]] 333333333. 333333333333333. 333333333333333. 3333333333333. 3333333333333333 гг. . . .
End Type
Синтаксис оператора Type состоит из следующих частей:
Part | Описание |
---|---|
Общественный | Дополнительно. Используется для объявления определяемых пользователем типов, доступных для всех процедур во всех модулях во всех проектах. |
Частный | Дополнительно. Используется для объявления определяемых пользователем типов, которые доступны только в модуле, где сделано объявление. |
имя_переменной | Обязательно. Имя определяемого пользователем типа; следует стандартным соглашениям об именах переменных. |
имя элемента | Обязательно. Имя элемента пользовательского типа. Имена элементов также соответствуют стандартным соглашениям об именах переменных, за исключением того, что могут использоваться ключевые слова. |
индексы | Если явно не указано в lower , нижняя граница массива управляется оператором Option Base . Нижняя граница равна нулю, если отсутствует оператор Option Base . |
тип | Обязательно. Тип данных элемента; может быть Byte, Boolean, Integer, Long, Currency, Single, Double, Decimal (в настоящее время не поддерживается), Date, String (для строк переменной длины), String length (для строк фиксированной длины), Object, Вариант, другой определяемый пользователем тип или тип объекта. |
Оператор типа можно использовать только на уровне модуля. После того, как вы объявили пользовательский тип с помощью Введите оператор , вы можете объявить переменную этого типа в любом месте в пределах области действия объявления. Используйте Dim , Private , Public , ReDim или Static для объявления переменной пользовательского типа.
В стандартных модулях и модулях классов пользовательские типы по умолчанию общедоступны. Эту видимость можно изменить с помощью ключевого слова Private .
Номера строк и метки строк не разрешены в Тип…Конец Тип блоков.
Пользовательские типы часто используются с записями данных, которые часто состоят из ряда связанных элементов разных типов данных.
В следующем примере показано использование массивов фиксированного размера в пользовательском типе:
Тип StateData CityCode (от 1 до 100) As Integer ' Объявить статический массив. Графство как строка * 30 Конечный тип Тусклый Вашингтон (от 1 до 100) как StateData
В предыдущем примере StateData
включает статический массив CityCode
, а запись Washington
имеет ту же структуру, что и StateData
.
При объявлении массива фиксированного размера в определяемом пользователем типе его размеры должны быть объявлены с помощью числовых литералов или констант, а не переменных.
Пример
В этом примере оператор Type используется для определения пользовательского типа данных. Оператор типа используется только на уровне модуля. Если он появляется в модуле класса, Оператору типа должно предшествовать ключевое слово Private .
Type EmployeeRecord ' Создать пользовательский тип. ID As Integer ' Определить элементы типа данных. Имя как строка * 20 Адрес в виде строки * 30 Телефон как долго HireDate как дата Конечный тип Подпрограмма создания записи () Dim MyRecord As EmployeeRecord ' Объявить переменную. ' Присвоение переменной EmployeeRecord должно происходить в процедуре. MyRecord.ID = 12003 ' Присвоить значение элементу. Конец сабвуфера
См. также
- Типы данных
- Заявления
Поддержка и отзывы
У вас есть вопросы или отзывы об Office VBA или этой документации? См. раздел Поддержка и отзывы Office VBA, чтобы узнать, как вы можете получить поддержку и оставить отзыв.
Оператор типа VBA (пример) | Как объявить переменные с типом VBA?
Тип — это оператор VBA, используемый для определения переменных, аналогичных функции DIM. Мы можем использовать его на пользовательском уровне, где у нас есть одно или несколько значений в переменной. Существует две номенклатуры операторов типов: общедоступные и частные. Однако использовать их необязательно, но необходимо указать имя переменной и имя элемента.
Оператор типа VBA используется для определения переменных под одним именем группы с разными типами данных, назначенными каждой переменной. Это помогает нам сгруппировать несколько переменных под одним объектом, чтобы использовать их под определенным именем типа.
Мы можем избежать использования модулей класса в модулях класса VBA. В модулях класса VBA пользователи имеют возможность создавать свои собственные объекты VBA в модулях класса VBA. Объекты, созданные в этом модуле, можно использовать в любом проекте VBA. Узнайте больше, объявив оператор Type. Ему не нужны никакие строковые модули, потому что мы можем встроить его в существующие модули, сэкономив нам место.
В одной из предыдущих статей мы обсуждали «VBA ENUMVBA ENUMENUM или перечисления — это предварительно определенные перечисления пользователями в каждом языке программирования. В VBA Vbnewline — это перечисление, и мы можем создавать свои собственные перечисления, используя оператор ENUM, чтобы сгруппировать все переменные под одним именем группы.
Вы можете использовать это изображение на своем веб-сайте, в шаблонах и т. д. Пожалуйста, предоставьте нам ссылку на авторство. Как указать авторство? Ссылка на статью должна быть гиперссылкой
Например:
Источник: Тип VBA (wallstreetmojo.com)
Например, если у вас есть группа под названием «Мобильные телефоны», у нас есть такие участники группы, как Redmi, Oppo, Vivo, Samsung, LG и т. д. Итак, Enum заявление мы можем сгруппировать с их соответствующими значениями.
ENUM Мобильные телефоны
REDMI = 12000
OPPO = 18000
VIVO = 18000
SAMSUNG = 25000
LG = 15000
ENER
LG = 15000
LG = 15000
9008 9008
. статья. Проблема с оператором Enum, поскольку он может содержать только тип данных LONG. Мы можем использовать оператор VBA TYPE для группировки переменных с разными типами данных. Эта статья покажет вам, как построить оператор Type в VBA. Читай дальше.
Содержание
- Что такое оператор типа в Excel VBA?
- Синтаксис
- Пример оператора Type в VBA
- Типы VBA и класс VBA
- Рекомендуемые статьи
Синтаксис
Имя группы
[Переменная 1] как тип данных переменной
[Переменная 2] как переменная типа данных
[Переменная 3] как тип данных переменной
[Переменная 4] как тип данных переменной
[Переменная 5] как тип данных переменной
End Type
Эти операторы могут быть объявлены внутри и в верхней части модуля, как наши глобальные переменные в VBA.
Тип VBA может содержать объектные переменные. Он может содержать массивы. Однако он не может содержать процедуры или функции.
Пример оператора типа в VBA
Вы можете скачать этот шаблон оператора типа VBA здесь — Шаблон оператора типа VBA
Давайте начнем процесс объявления переменных с оператора типа. Затем мы увидим тот же пример объявления мобильных брендов, что и в VBA Enum.
Шаг 1: В верхней части модуля начните слово «Тип» и дайте имя группе «Тип».
Код:
Тип MobileBrands End Type
Шаг 2: Что мы обычно видим в мобильных брендах? Сначала мы видим имена, поэтому объявите переменную как Name as String.
Код:
Тип MobileBrands Имя как строка End Введите
Шаг 3: После имени мы проверяем LaunchDate. Объявите переменную как LaunchDate as Date.
Код:
Тип MobileBrands Имя как строка Дата запуска как дата End Type
Шаг 4: Затем мы проверяем емкость хранилища, чтобы объявить переменную как хранилище как Integer.
Код:
Тип MobileBrands Имя как строка Дата запуска как дата Хранение как целое число Конечный тип
Шаг 5: Далее мы проверяем объем оперативной памяти.
Код:
Тип MobileBrands Имя как строка Дата запуска как дата Хранение как ОЗУ как целое число End Type
Шаг 6: Наконец, мы проверяем цену.
Код:
Тип MobileBrands Имя как строка Дата запуска как дата Хранение как целое число ОЗУ как целое число Цена пока End Type
Теперь в подпроцедуре мы можем получить доступ ко всем этим переменным типам данных, объявив переменную как Type, Name, т. е. MobileBrands.
Шаг 7: Создайте подпроцедуру.
Код:
Подтип_Example1() End Sub
Шаг 8: Теперь объявите переменную «Mobile» как MobileBrands.
Код:
Подтип_Example1() Тусклый мобильный как моб End Sub
Шаг 9: Теперь, с именем переменной «Mobile», мы можем получить доступ ко всем переменным «MobileBrands».
Код:
Шаг 10: Теперь сохраните каждое значение, как показано ниже.
Код:
Тип MobileBrands Имя как строка Дата запуска как дата Хранение как целое число ОЗУ как целое число Цена пока Конечный тип Подтип_Example1() Dim Mobile As MobileBrands Mobile.Name = «Редми» Mobile.LaunchDate = "10 января 2019 г." Мобильное хранилище = 62 Моб.ОЗУ = 6 Мобильный.Цена = 16500 MsgBox Mobile.Name & vbNewLine & Mobile.LaunchDate & vbNewLine & _ Mobile.Storage & vbNewLine & Mobile.RAM & vbNewLine & Mobile.Price End Sub
Наконец, покажите результат в окне сообщений VBA. Окно сообщений VBAФункция VBA MsgBox — это функция вывода, которая отображает обобщенное сообщение, предоставленное разработчиком. Этот оператор не имеет аргументов, и персонализированные сообщения в этой функции записываются в двойных кавычках, а для значений предоставляется ссылка на переменную. Подробнее, как показано ниже.
Код:
Подтип_Example1() Dim Mobile As MobileBrands Mobile. Name = «Редми» Mobile.LaunchDate = "10 января 2019 г." Мобильное хранилище = 62 Моб.ОЗУ = 6 Мобильный.Цена = 16500 MsgBox Mobile.Name & vbNewLine & Mobile.LaunchDate & vbNewLine & _ Mobile.Storage & vbNewLine & Mobile.RAM & vbNewLine & Mobile.Price End Sub
Запустите код с помощью клавиши F5 или вручную и посмотрите результат в окне сообщения.
Таким образом, мы можем использовать оператор VBA Type для определения новых типов данных в подпроцедуре.
Типы VBA и класс VBA
Часто тип VBA сравнивают с модулями класса VBA. Однако между ними есть определенные различия. Ниже приведены общие различия.
- Отличие 1: Тип VBA может содержать только общедоступные переменныеТолько общедоступные переменныеВ VBA «общедоступные переменные» — это переменные, объявленные для использования публично для всех макросов, написанных в одном модуле, а также макросов, написанных в разных модулях. В результате переменные, объявленные в начале любого макроса, называются «общедоступными переменными» или «глобальными переменными».