Используя словарь VBA, мы можем сгруппировать все виды данных в словарь, чтобы получить доступ ко всем элементам с помощью одной переменной. Мы можем использовать словарь для создания набора комбинаций ключ-значение. Как только объект связан с ключами, позже мы можем вызывать их, просто используя имя ключа.
Словарь VBA очень сложен для понимания, но мы постараемся сделать все возможное, чтобы вам было легко его понять. Мы можем сравнить Словарь и Коллекцию в одном масштабе, но некоторые словари VBA предлагают некоторые функции, недоступные в Коллекции VBAКоллекции VBAКоллекция VBA — это несложная структура данных, используемая для хранения/сбора объектов. В отличие от VBA Array, здесь вы можете более удобно добавлять и удалять элементы. читать далее объект.
Вы можете использовать это изображение на своем веб-сайте, в шаблонах и т. д. Пожалуйста, предоставьте нам ссылку на авторствоКак предоставить атрибуцию?Ссылка на статью должна быть гиперссылкой Например: Источник: Словарь VBA (wallstreetmojo.com)
Работа со словарями VBA.
Чтобы работать со словарями VBA, первое, что нам нужно сделать, это установить ссылку на объект как «Microsoft Scripting Runtime».
Чтобы установить ссылку, выполните следующие шаги.
Шаг 1: Перейдите в Инструменты > Ссылки.
Шаг 2: Прокрутите вниз и выберите параметр «Среда выполнения сценариев Microsoft», затем нажмите «ОК».
Теперь мы можем получить доступ к словарю VBA с библиотекой сценариев.
После установки ссылки на «Microsoft Scripting Runtime» нам нужно создать экземпляр словаря VBA. Сначала объявите переменную как Скрипты.Словарь.
Код:
Sub Dict_Example1()
Dim Dict As Scripting.Dictionary
End Sub
Теперь переменная «Dict» является объектной переменной. Для объектной переменной нам нужно установить ссылку на объект, используя слово «Новый».
Set Dict = New Scripting.Dictionary
Теперь мы можем получить доступ ко всем свойствам и методам словаря.
Примечание: Все слова с зелеными кнопками — это методы, а остальные — свойства.
Теперь объявите одну переменную как DictResult.
Dim DictResult As Variant
Теперь с помощью переменной «Dict» мы создадим новый ключ.
Ключ это слово, которое мы добавляем. Давайте добавим имя мобильного телефона как «Redmi».
Пункт не что иное, как определение слова (ключ) мы добавили. Это определение телефона и есть его цена, поэтому добавлю цену до 15000.
Теперь для другой переменной «DictResult» мы добавим ключевое слово, используя переменную «Dict».
Ключ это слово, которое мы создали на предыдущем шаге, т. е. имя телефона.
Теперь переменная «Диктрезультат» имеет элемент ключа, который мы добавили. Теперь покажите результат переменной в Окно сообщения VBAОкно сообщений VBAФункция VBA MsgBox — это функция вывода, которая отображает обобщенное сообщение, предоставленное разработчиком. Этот оператор не имеет аргументов, и персонализированные сообщения в этой функции записываются в двойных кавычках, а для значений предоставляется ссылка на переменную.читать далее.
Код:
Sub Dict_Example1()
Dim Dict As Scripting.Dictionary
Set Dict = New Scripting.Dictionary
Dim DictResult As Variant
Dict.Add Key:="Redmi", Item:=15000
DictResult = Dict("Redmi")
MsgBox DictResult
End Sub
Теперь запустите код вручную или с помощью клавиши F5, и в окне сообщения будет показана цена (пункт) телефона (ключ) мы добавили с помощью «Dict».
Понимание КЛЮЧА и ПУНКТА
Если вы не поняли KEY & ITEM, позвольте мне объяснить вам на простом примере. Представьте себе реальный словарь. В этом словаре у нас есть слова (ключи) и значение этих слов (элемент). Точно так же слова — это Ключи, а определение или значение — это Предмет.
Теперь взгляните на еще один пример Словаря. Предположим, вы ищете номер телефона определенного человека. Как вы ищете?
Очевидно, используя имя, которое мы использовали при сохранении номера телефона. Здесь у нас есть две вещи, одна из которых Имя человека а второй это Телефонный номер.
Имя человека является Ключ.
В Телефонный номер является Пункт.
Если вам нужен пример Excel, мы можем привести ВПР в качестве примера. Мы используем формулу для поиска значений на основе LOOKUP VALUE (Ключ). Результат, возвращаемый Функция ВПРФункция ВПРФункция Excel ВПР ищет определенное значение и возвращает соответствующее совпадение на основе уникального идентификатора. Уникальный идентификатор однозначно связан со всеми записями базы данных. Например, идентификатор сотрудника, номер списка учащихся, контактный номер клиента, адрес электронной почты продавца и т. д. являются уникальными идентификаторами. читать далее называется Пункт.
Проверьте, есть ли мобильный телефон или нет.
Представьте, что вы даете своим клиентам пользовательскую форму для проверки цены мобильного телефона с помощью простого поля ввода. Ниже VBA-код ExcelКод Excel VBAКод VBA относится к набору инструкций, написанных пользователем на языке программирования приложений Visual Basic в редакторе Visual Basic (VBE) для выполнения определенной задачи.читать далее представит перед пользователем поле ввода, и ему нужно ввести марку телефона, который он ищет. Если название бренда есть в словаре, в нем будет указана цена соответствующего телефона, в противном случае будет отображаться сообщение «Телефон, который вы ищете, не существует в библиотеке».
Код:
Sub Dict_Example2()
Dim PhoneDict As Scripting.Dictionary
Dim DictResult As Variant Set PhoneDict = New Scripting.Dictionary
PhoneDict.Add Key:="Redmi", Item:=15000
PhoneDict.Add Key:="Samsung", Item:=25000
PhoneDict.Add Key:="Oppo", Item:=20000
PhoneDict.Add Key:="VIVO", Item:=21000
PhoneDict.Add Key:="Jio", Item:=2500
DictResult = Application.InputBox(Prompt:="Please Enter the Phone Name")
If PhoneDict.Exists(DictResult) Then
MsgBox "The Price of the Phone " & DictResult & " is : " & PhoneDict(DictResult)
Else
MsgBox "Phone You are Looking for Doesn't Exists in the Library"
End IfEnd Sub
Запустите этот код с помощью клавиши F5 или вручную и посмотрите результат.