Excel VBA колекция обект

Видяхме речника VBA и VBA Array и двамата имат подобна връзка с VBA Collection. В VBA колекция можем да създадем собствена колекция от група и да предоставим елемента и ключ, за да получим стойността, съхранявана под него. Като има предвид, че в речника VBA използвахме, за да създадем самия речник във VBA, който създава наш собствен речник, който има определение на думи и стойности, както има нормален речник. И същото в VBA Array също, където използвахме за създаване на колекционен обект с ограничен размер.

Предимството на VBA Collection е, че не е необходимо да увеличаваме размера на всеки обект, който дефинираме тук. Който и обект да бъде създаден в VBA Collection, няма ограничения. И не е нужно да променяме размера на всеки обект, сякаш смятаме, че изисква.

Заедно със създаването на обект Добавяне на колекция можем да използваме и Count, Item и Remove collection объекти.

Как да създадете колекционен обект в Excel VBA?

По-долу са различните примери за създаване на обект на колекция в excel с помощта на VBA код.

Можете да изтеглите този шаблон на VBA Collection Excel тук - VBA Collection Excel шаблон

Excel VBA Колекция - Пример №1

В този пример ще видим как да създадем Object Collection в VBA. За това следвайте стъпките по-долу:

Стъпка 1: Отидете до прозореца на VBA, в раздела Меню Вмъкване изберете Модул, както е показано по-долу.

Стъпка 2: Напишете подкатегорията на VBA Collection със същото име или можем да изберем всяко друго име според нашето удобство.

Код:

 Sub Excel_Collection1 () Край Sub 

Стъпка 3: Сега дефинирайте променлива като Collection в произволно име, както е показано по-долу.

Код:

 Sub Excel_Collection1 () Dim ColObject As Collection End Sub 

Можем да изберем всяка дума, текст или име на дефиниране на променлива, но се препоръчва първо да определим това в процеса на изпълнение на функция.

Стъпка 4: Задайте дефинираната променлива като Нова колекция. Това ще помогне за активирането и настройката на вече дефинирания обект като Collection към Нова колекция.

Код:

 Sub Excel_Collection1 () Dim ColObject As Collection Set ColObject = New Collection End Sub 

Стъпка 5: В описанието на различни обекти за събиране видяхме като Add, Ite m, Count и Remove . Сега ще използваме всички тези обекти за съхраняване на ново съдържание. Първо, за да добавим, ще присвоим ADD на дефинираната променлива ColObject .

Код:

 Sub Excel_Collection1 () Dim ColObject As Collection Set ColObject = Нова колекция ColObject.Add End Sub 

Стъпка 6: Сега под ITEM ще изберем пореден номер, който може да бъде всичко. Ето, ние го избираме като 1.

Код:

 Sub Excel_Collection1 () Dim ColObject As Collection Set ColObject = Нова колекция ColObject.Add Item: = 1, End Sub 

Стъпка 7: В синтаксиса на колекция VBA трябва да въведем KEY, за който можем да зададем ITEM. Тук също можем да изберем всичко, което да бъде добавено в хранилището на VBA. Тук сме разгледали думата Нютон .

Код:

 Sub Excel_Collection1 () Dim ColObject As Collection Set ColObject = Нова колекция ColObject.Add Item: = 1, Key: = "Newton" End Sub 

Стъпка 8: Можем да пропуснем частта преди и след синтаксиса. Сега след това ще присвоим ключа на променлива на обект на Collection.

Код:

 Sub Excel_Collection1 () Dim ColObject As Collection Set ColObject = Нова колекция ColObject.Add Item: = 1, Key: = "Newton" ColResult = ColObject ("Newton") End Sub 

Стъпка 9: Използвайте поле за съобщения, за да видите стойността, съхранена в променливата на обекта на Collection.

Код:

 Sub Excel_Collection1 () Dim ColObject As Collection Set ColObject = Нова колекция ColObject.Add Item: = 1, Key: = "Newton" ColResult = ColObject ("Newton") MsgBox ColResult End Sub 

Стъпка 10: Сега компилирайте кода и го стартирайте, като кликнете върху бутона Възпроизвеждане, разположен под лентата на менюто.

Ще получим съобщението като 1. Това означава, че за ключ Newton, Item е разположен на 1- ва позиция.

Excel VBA Collection - пример №2

Има друг метод или начин, по който можем да видим какъв номер на елемент е присвоен на кой ключ. Можем също да преброим броя на ключовете, попълнени в обекта VBA Collection. Този процес е доста подобен на процеса, който видяхме в пример-1. За това следвайте стъпките по-долу:

Стъпка 1: Напишете подкатегорията на VBA Collection, както е показано по-долу.

Код:

 Sub Excel_Collection2 () Край Sub 

Стъпка 2: Помислете за същата променлива, която видяхме в пример-1, като Collection и я задайте като Нова колекция като ColObject.

Код:

 Sub Excel_Collection2 () Dim ColObject As Collection Set ColObject = New Collection End Sub 

ColObject е единствената променлива тук в този пример с тази помощ, която ще видим броя или последователността на дефиниране на Item и Key.

Стъпка 3: Сега на определения обект на колекция задайте функцията ADD и изберете всяка стойност според вашия избор. Тук избираме 10.

Код:

 Sub Excel_Collection2 () Dim ColObject as Collection Set ColObject = Нова колекция ColObject.Add 10 End Sub 

Стъпка 4: По същия начин добавете още 2 или 3 обекта на колекция, както е показано по-долу.

Код:

 Sub Excel_Collection2 () Dim ColObject As Collection Set ColObject = Нова колекция ColObject.Add 10 ColObject.Add 20 ColObject.Add 30 End Sub 

Стъпка 5: За да знаем броя на елементите, използвани в Collection Object, ще използваме Debug print.

Код:

 Sub Excel_Collection2 () Dim ColObject as Collection Set ColObject = Нова колекция ColObject.Add 10 ColObject.Add 20 ColObject.Add 30 Debug.Print End Sub 

Основен плюс на използването на Debug print тук вместо полето Съобщение е, че ще можем да вземем броя заедно с грешката, ако има такава. За всяка грешка ще получим изход като Zero и докато за правилния процес ще получим действителната стойност.

Стъпка 6: За да получим броя на променливата ColObject, ще използваме функция Count, която е част от вградена функция в списъка.

Код:

 Sub Excel_Collection2 () Dim ColObject as Collection Set ColObject = Нова колекция ColObject.Add 10 ColObject.Add 20 ColObject.Add 30 Debug.Print ColObject.Count End Sub 

Стъпка 7: От менюто Преглед изберете незабавния прозорец, както е показано по-долу. Или можем да използваме клавиш за късо изрязване като Ctrl + G, за да получим този прозорец.

Това е мястото, където ще видим изхода с помощта на печат на грешки.

Стъпка 8: Сега компилирайте кода и го стартирайте, като кликнете върху бутона Възпроизвеждане, разположен под лентата на менюто. Ще видим, в непосредствения прозорец броят на общите колекции от обекти идва като 3 .

Сега, за да тестваме дали полученият брой е правилен или не, ще изтрием един ред от обекта за събиране или ще го превърнем в текст, като поставим apostrophe (') и отново стартираме кода.

Ще получим актуализираното число като 2, което е броя на обекта за събиране 10 и 20 Номер на артикула. И можем да забележим, че 3 -ти ред обект на колекция е оцветен като зелен и това е знакът за получаване на код, преобразуван в текст.

Плюсове на Excel колекция VBA

  • Не е необходимо да преоразмеряваме определения от нас обект.
  • Можем да използваме различни предмети от колекцията, които са вградени в VBA Collection. Тези обекти не се виждат в друга функция като VBA речник или VBA масив.
  • Чрез колекция VBA можем също и всякакъв тип база данни за клиенти или продукти.

Неща, които трябва да запомните

  • Препоръчва се използването на Debug print вместо Box Box. По този начин щяхме да можем да видим грешката и да я поправим.
  • Чрез VBA Collection можем да различаваме различни видове обекти и да добавяме всякакъв размер на данните.
  • В функция Обект обект можем да определим произволно число според нашия избор. Това може да бъде код на продукта, последователност или цена, която искаме да видим.
  • Записването на файла в Macro enable excel ще ни позволи да запазим кода за по-нататък.

Препоръчителни статии

Това е ръководство за колекцията на VBA. Тук обсъждаме как да създадем Collection обект в Excel, използвайки VBA код, заедно с практически примери и шаблон за Excel за изтегляне. Можете да разгледате и другите ни предложени статии -

  1. Ръководство за използване на дължината на VBA масива
  2. Как да изчислим обхвата в Excel?
  3. Ръководства за VBA клетки
  4. PowerPivot в Excel

Категория: