Коллекция VBA
Объект коллекции Excel VBA
В VBA codingVBA CodingVBA code относится к набору инструкций, написанных пользователем на языке программирования приложений Visual Basic в редакторе Visual Basic (VBE) для выполнения определенной задачи. Подробнее, мы можем создавать наши группы коллекций отдельно от существующей коллекции предметов одной группы. Во многих наших статьях мы говорили об объектных переменных. Этот учебник предоставит вам подробную информацию об объекте коллекции VBA.
Если вы прочитали нашу предыдущую статью «Массивы VBAМассивы VBAМассив VBA в Excel — это единица хранения или переменная, которая может хранить несколько значений данных. Эти значения обязательно должны быть одного типа данных. Это означает, что связанные значения группируются вместе для сохранения в переменной массива. Читать далее», вам будет намного легче понять это. Массивы используются для группировки переменных под одной крышей. Точно так же мы можем использовать коллекцию для хранения группы переменных.
Можно использовать коллекции для хранения объектов. Они гораздо более гибкие, чем массивы VBA. В то время как массивы имеют фиксированные ограничения по размеру, считыватели не имеют фиксированных ограничений по размеру в любой момент времени и не требуют ручного изменения размера.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
Коллекция VBA очень похожа на «VBA DictionaryVBA DictionaryVBA Dictionary объединяет различные типы данных в словарь, так что вы можете получить доступ ко всем из них с помощью всего одной переменной. Подробнее», но словарь требует, чтобы ссылка на внешний объект была настроена в окно ссылки на объект. Для «Словаря VBA» нам нужно установить тип ссылки как «Среда выполнения сценариев Microsoft», но Коллекция не требует дополнительных настроек.
Оглавление
Как создать объект коллекции в VBA?
Чтобы начать работу с коллекцией, нам нужно объявить переменную как “Коллекция.”
.free_excel_div{фон:#d9d9d9;размер шрифта:16px;радиус границы:7px;позиция:относительная;margin:30px;padding:25px 25px 25px 45px}.free_excel_div:before{content:””;фон:url(центр центр без повтора #207245;ширина:70px;высота:70px;позиция:абсолютная;верх:50%;margin-top:-35px;слева:-35px;граница:5px сплошная #fff;граница-радиус:50%} Вы можете скачать этот шаблон Excel коллекции VBA здесь – Шаблон Excel коллекции VBA
Код:
Sub Collection_Example() Dim Col As Collection End Sub
Поскольку коллекция является переменной объекта, нам нужно установить ссылку на объект, создав новый экземпляр.
Код:
Sub Collection_Example() Dim Col As Collection Set Col = New Collection End Sub
Теперь с помощью переменной мы можем получить доступ ко всем методам переменной коллекции «Col».
Код:
Sub Collection_Example() Dim Col As Collection Set Col = Новый столбец коллекции End Sub
Прежде чем использовать эти методы, нам нужно объявить переменную как строку.
Код:
Sub Collection_Example() Dim Col As Collection Set Col = New Collection Dim ColResult As String End Sub
Теперь используйте переменную «Col», чтобы выбрать метод «Добавить».
Код:
Sub Collection_Example() Dim Col As Collection Set Col = New Collection Col.Add End Sub
В методе «Добавить» у нас есть определенные параметры. Предположим, мы храним названия мобильных брендов с их средней ценой продажи на рынке.
Под Элемент, аргумент входит в цену мобильного телефона.
Код:
Sub Collection_Example() Dim Col As Collection Set Col = New Collection Col.Add Item:=15000, End Sub
Далее, под Ключ аргумент, введите название мобильного бренда.
Код:
Sub Collection_Example() Dim Col As Collection Set Col = New Collection Col.Add Item:=15000, Key:=”Redmi” End Sub
Для переменной «ColResult» мы будем хранить результат объектной переменной «Col».
Код:
Sub Collection_Example() Dim Col As Collection Set Col = New Collection Col.Add Item:=15000, Key:=”Redmi” ColResult = Col(End Sub
Когда вы открываете скобки переменной «Col», мы можем видеть аргумент как Индекс. Для этот аргумент, нам нужно предоставить значение критического аргумента из метода добавления коллекции, т. е. название мобильного бренда.
Код:
Sub Collection_Example() Dim Col As Collection Set Col = New Collection Col.Add Item:=15000, Key:=”Redmi” ColResult = Col(“Redmi”) End Sub
Теперь давайте покажем результат в окне сообщения в VBAMessage Box. В VBAVBA функция MsgBox — это функция вывода, которая отображает обобщенное сообщение, предоставленное разработчиком. Этот оператор не имеет аргументов, и персонализированные сообщения в этой функции записываются в двойных кавычках, а для значений предоставляется ссылка на переменную. Подробнее.
Код:
Sub Collection_Example() Dim Col As Collection Set Col = New Collection Col.Add Item:=15000, Key:=”Redmi” ColResult = Col(“Redmi”) MsgBox ColResult End Sub
Мы завершили его, когда запустили код. Мы должны увидеть цену мобильного бренда «Redmi».
Лучшее понимание ключевых параметров и параметров элементов
Мы уверены, что разобраться в параметрах объекта Collection непросто. Позвольте мне объяснить вам простой пример.
Представьте, что у вас есть меню фруктов с их названием и ценой на фрукты. Например, предположим, что вы ищете цену на фрукт «Яблоко» по названию фрукта.
Для поиска цены фрукта нам нужно указать название фрукта, т.е. на языке коллекции VBA Название фрукта является Ключ, и цена фруктов “Элемент.”
Это похоже на применение функции ВПР или ГПР. Функция ГПР — это функция обращения к листу, которая находит и сопоставляет значение из строки, а не из столбца, используя ссылку. Hlookup означает горизонтальный поиск, при котором мы ищем данные в строках горизонтально. Подробнее, на основе значения поиска. Но сначала мы получим необходимые данные из базы данных. Здесь искомое значение Ключ, и результат Элемент.
Расширенный пример
Представьте, что вы менеджер одного из розничных магазинов и отвечаете за обработку запросов клиентов. Например, один запрос клиента — это запрос о цене продукта.
Было бы полезно, если бы вы позволили покупателю искать цену продукта с полной информацией. Точно так же вам нужно показать сообщение, если данные не найдены. Ниже приведен пример кода, который представит поле ввода перед пользователем. Они требуют, чтобы вы ввели название продукта, который они ищут. Если товар есть в коллекции, то будет указана цена указанного товара. В противном случае появится сообщение: «Товар, который вы ищете, не существует».
Код:
Sub Collection_Example2() Dim ItemsCol As Collection Dim ColResult As String Set ItemsCol = New Collection ItemsCol.Add Key:=”Apple”, Item:=150 ItemsCol.Add Key:=”Orange”, Item:=75 ItemsCol.Add Key: =”Арбуз”, Item:=45 ItemsCol.Add Key:=”Mush Millan”, Item:=85 ItemsCol.Add Key:=”Mango”, Item:=65 ColResult = Application.InputBox(Prompt:=”Please Введите имя фрукта”) If ItemsCol(ColResult) <> “” Then MsgBox “Цена фрукта” & ColResult & “: ” & ItemsCol(ColResult) Else MsgBox “Цена фрукта, который вы ищете, не Существует в коллекции” End If End Sub
Рекомендуемые статьи
Эта статья представляет собой руководство по коллекции VBA. Здесь мы узнаем, как создать объект коллекции VBA, расширенные примеры и загружаемый шаблон Excel. Ниже приведены некоторые полезные статьи Excel, связанные с VBA:
- Скрыть столбцы в VBA
- Функция VBA JOIN
- GetOpenFilename VBA
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)