Какво е List Box в Excel VBA?

List Box е един от инструментите под потребителска форма във VBA. Както подсказва самото име, полето със списък ще съдържа целия списък със стойности, даден от потребителя. В полето VBA Списък идва с потребителска форма. В тази статия ще видим как да създадете поле със списък и как да държите стойности в полето за списък в Excel VBA.

List Box е поле, което може да съдържа стойности в него. От този списък с елементи, потребителят може да избере елемента, показан в полето за списък.

Можем също така да изготвим списък със списък в обикновен лист Excel.

Как да създадете списъчно поле в Excel?

Да предположим, че имате списък на месеца в един от листата на excel.

За този списък от месеци ще създадем поле със списък. Следвайте стъпките по-долу, за да създадете списъка с полета в excel работен лист:

Стъпка 1: Отидете на раздела за програмисти. Под програмист, раздела Отидете на опция Вмъкване и под вмъкване, опция Отидете на контрола на формуляра, под контрола на формуляра изберете Списък поле.

Стъпка 2: След като изберете полето за списък, нарисувайте полето в листа на excel.

Стъпка 3: Щракнете с десния бутон върху полето за вмъкване на списък и изберете Format Control .

Стъпка 4: Под Контрол на формата отидете на Контрол . Изберете диапазона на въвеждане като диапазон от име на месец и дайте препратка към клетката към клетка D1 и след това щракнете върху Ок .

Стъпка 5: Ще имаме списък на месеца в полето за списък.

Стъпка 6: Изберете някой от елементите в полето за списък и вижте промяната в клетка D1.

И така, получихме 3 като резултат в клетка D1, защото Мар е третата позиция в списъка.

Как да създадете списъчно поле в VBA?

Създаването на списъчно поле не е толкова лесно, както видяхме в горния пример, трябва да имате значителен обем знания за Excel VBA макроси.

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

VBA List Box - Пример №1

Разбиране на VBA List Box.

Можете да разгледате следния пример за по-добро разбиране на VBA List Box.

Следвайте стъпките по-долу, за да създадете списъчно поле в VBA.

Стъпка 1: Във Visual Basic Window Вмъкнете потребителска форма.

Стъпка 2: Веднага щом поставите потребителска форма, можете да видите кутия с инструменти заедно с потребителския формуляр.

Стъпка 3: В тази кутия с инструменти изберете List Box .

Стъпка 4: Начертайте този списък в потребителския формуляр.

Стъпка 5: След като поставите полето за списък, посочете подходящо име на този списък в прозореца Свойства.

Забележка: Ако не виждате този списък, натиснете клавиша F4, ще видите прозореца със свойства като горния.

Стъпка 6: Превъртете надолу и намерете „Row Source“. В това въведете диапазона от стойности на името на вашия месец заедно с името на листа.

Стъпка 7: Веднага след като дадете справка, можете да видите имената на месеците в полето за списък.

Стъпка 8: Сега в прозореца със списъка със свойства изберете линията на стил като „ 1 - fmListStyleOption “.

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

Стъпка 10: Изпълнете този код, ще видите поле със списък в отделно.

Стъпка 11: Сега ще добавим макро код, за да съхраняваме данните, избрани от потребителя. Кликнете два пъти върху полето за списък. Ще видите отделно име на макрос по-долу.

 Частен Sub Month_List_Box_Click () Край Sub 

Стъпка 11: Когато потребителят избере месеца, ние ще съхраняваме данните в клетка G5. За да съхраните данните, дадени от потребителя, добавете код по-долу.

 Частен диапазон Sub Month_List_Box_Click () ("G5"). Стойност = Month_List_Box.Value End Sub 

Стъпка 12: Сега, ако стартирате кода и изберете някой от месеците, можем да видим стойността, избрана от потребителя в клетката G5.

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

Списък с VBA списък - пример №2

Метод Add.Items за добавяне на стойности в полето за списък

Следвайте стъпките по-долу, за да създадете списъчно поле в VBA.

Стъпка 1: Създайте нова потребителска форма. Ето го UserForm2.

Стъпка 2: Добавете полето Списък в Userform 2.

Стъпка 3: След като поставите полето със списък, посочете подходящо име на този списък в прозореца Свойства, т.е. Month_list_Box1 .

Стъпка 4: Сега в прозореца със свойството на списъка изберете стил на линия като „ 1 - fmListStyleOption “.

Стъпка 5: Кликнете два пъти върху потребителския формуляр. Ще видите автоматично вмъкнат макрос като по-долу.

 Private Sub UserForm_Click () End Sub 

Стъпка 6: Като поставите курсор вътре в макроса, изберете „ Инициализиране “.

Стъпка 7: Веднага след като изберете „Инициализиране“, можем да видим нов макрос, който да бъде създаден точно под текущия.

 Private Sub UserForm_Initialize () End Sub 

Стъпка 8: Изтрийте стария макрос. Под инициализиране на UserForm напишете кода по-долу, за да добавите елементи в полето за списък.

 Частен под UserForm_Initialize () Month_List_Box1.AddItem "Jan" Month_List_Box1.AddItem "Feb" Month_List_Box1.AddItem "Mar" Month_List_Box1.AddItem "Apr" Month_List_Box1.AddItem "May" Mo___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ _ _ _ __ _ _ _ "Aug" Month_List_Box1.AddItem "Sep" Month_List_Box1.AddItem "oct" Month_List_Box1.AddItem "Nov" Month_List_Box1.AddItem "Dec" End Sub 

Стъпка 10: Сега натиснете бутона F5, за да стартирате кода и ще получите следния изход.

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

  • Ако директно давате справка за клетка, тогава трябва да посочите името на листа и референтната клетка. (Трябва да добавите символ на удивление (!) Пред името на листа).
  • Можете също да добавите елементи в полето за списък, като използвате метода Add.Item.
  • Ако искате да позволите на потребителя да избере повече от един елемент, тогава трябва да изберете опцията „ fmMultiSelectMult“ под Multi-Select в прозореца Свойства.

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

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

  1. Как да използвате VBA Replace?
  2. Добавяне на списъчно поле в Excel
  3. Ръководство за Excel VBA масиви
  4. Excel падащ списък

Категория: