Co to jest pole listy w programie Excel VBA?
Pole listy jest jednym z narzędzi w formularzu użytkownika w VBA. Jak sama nazwa sugeruje, w polu listy będzie przechowywana cała lista wartości podanych przez użytkownika. W polu listy VBA znajduje się formularz użytkownika. W tym artykule zobaczymy, jak utworzyć pole listy i jak przechowywać wartości w polu listy w programie Excel VBA.
Pole listy to pole, w którym można przechowywać wartości. Z tej listy elementów użytkownik może wybrać element wyświetlony w polu listy.
Możemy również narysować pole listy w zwykłym arkuszu programu Excel.
Jak utworzyć pole listy w programie Excel?
Załóżmy, że masz listę miesiąca w jednym z arkuszy programu Excel.
Dla tej listy miesięcy utworzymy pole listy. Wykonaj poniższe kroki, aby utworzyć pole listy w arkuszu programu Excel:
Krok 1: Przejdź do karty Deweloper. W obszarze programista przejdź do opcji Idź do opcji Wstaw, a w opcji Wstaw do Kontrola formularzy, w obszarze Kontrola formularzy wybierz Pole listy.
Krok 2: Po wybraniu pola listy narysuj pole listy w arkuszu programu Excel.
Krok 3: Kliknij prawym przyciskiem myszy wstawioną listę i wybierz Kontrola formatu .
Krok 4: W obszarze Kontrola formatu przejdź do opcji Sterowanie . Wybierz zakres wejściowy jako zakres nazw miesięcy i podaj odwołanie do komórki do komórki D1, a następnie kliknij OK .
Krok 5: Będziemy mieć listę miesiąca w polu listy.
Krok 6: Wybierz dowolny element z pola listy i zobacz zmianę w komórce D1.
Tak więc otrzymaliśmy 3 jako wynik w komórce D1, ponieważ Mar jest trzecim elementem na liście.
Jak utworzyć pole listy w VBA?
Utworzenie pola listy nie jest tak łatwe, jak widzieliśmy w powyższym przykładzie, musisz mieć dużą wiedzę na temat makr Excel VBA.
Możesz pobrać ten szablon Excela VBA List Box tutaj - Szablon Excel VBA List BoxPole listy VBA - przykład nr 1
Zrozumienie pola listy VBA.
Aby lepiej zrozumieć pole listy VBA, można rozważyć następujący przykład.
Wykonaj poniższe kroki, aby utworzyć pole listy w VBA.
Krok 1: W oknie Visual Basic Wstaw formularz użytkownika.
Krok 2: Jak tylko wstawisz formularz użytkownika, zobaczysz zestaw narzędzi wraz z formularzem użytkownika.
Krok 3: W tym przyborniku wybierz Pole listy .
Krok 4: Narysuj to pole listy w formularzu użytkownika.
Krok 5: Po wstawieniu pola listy podaj odpowiednią nazwę tego pola listy w oknie Właściwości.
Krok 6: Przewiń w dół i znajdź „Źródło wiersza”. W tym wpisz zakres wartości nazwy miesiąca wraz z nazwą arkusza.
Krok 7: Gdy tylko podasz referencję, możesz zobaczyć nazwy miesięcy w polu listy.
Krok 8: Teraz w oknie właściwości pola listy wybierz styl linii jako „ 1 - fmListStyleOption ”.
Krok 9: Gdy tylko wybierzesz styl linii, natychmiast zobaczysz wpływ.
Krok 10: Uruchom ten kod, a zobaczysz osobne pole listy.
Krok 11: Teraz dodamy kod makr do przechowywania danych wybranych przez użytkownika. Kliknij dwukrotnie pole listy. Zobaczysz osobną nazwę makra, taką jak poniżej.
Sub prywatny. Month_List_Box_Click () End Sub
Krok 11: Gdy użytkownik wybierze miesiąc, będziemy przechowywać dane w komórce G5. Aby zapisać dane podane przez użytkownika, dodaj poniższy kod.
Sub prywatny Private_List_Box_Click () Zakres („G5”). Wartość = Month_List_Box.Value End Sub
Krok 12: Teraz, jeśli uruchomisz kod i wybierzesz jeden z miesięcy, możemy zobaczyć wartość wybraną przez użytkownika w komórce G5.
Wybrałem Jun, więc widzę Jun w komórce G5. W ten sposób możemy użyć pola listy w twoich projektach VBA, aby uzyskać informacje od użytkowników.
Pole listy VBA - Przykład 2
Metoda Add.Items w celu dodania wartości do pola listy
Wykonaj poniższe kroki, aby utworzyć pole listy w VBA.
Krok 1: Utwórz nowy formularz użytkownika. Tutaj jest UserForm2.
Krok 2: Dodaj pole listy w formularzu użytkownika 2.
Krok 3: Po wstawieniu pola listy, nadaj mu odpowiednią nazwę w polu Właściwości, tj. Month_list_Box1 .
Krok 4: Teraz w oknie właściwości pola listy wybierz styl linii jako „ 1 - fmListStyleOption ”.
Krok 5: Kliknij dwukrotnie formularz użytkownika. Zobaczysz automatycznie wstawione makro, takie jak poniższe.
Sub prywatny UserForm_Click () End Sub
Krok 6: Umieszczając kursor wewnątrz makra wybierz „ Inicjalizuj ”.
Krok 7: Gdy tylko wybierzesz „Inicjalizuj”, możemy zobaczyć nowe makro do utworzenia tuż pod bieżącym.
Sub prywatny UserForm_Initialize () End Sub
Krok 8: Usuń stare makro. W inicjalizacji UserForm wpisz poniższy kod, aby dodać elementy do pola listy.
Private Sub 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.AddItemBlue "Month_List_ox_tem „Aug” Month_List_Box1.AddItem „Sep” Month_List_Box1.AddItem „oct” Month_List_Box1.AddItem „Nov” Month_List_Box1.AddItem „Dec” End Sub
Krok 10: Teraz naciśnij przycisk F5, aby uruchomić kod, a otrzymasz następujący wynik.
Rzeczy do zapamiętania
- Jeśli bezpośrednio podajesz odwołanie do komórki, musisz podać nazwę arkusza i odwołanie do komórki. (Musisz dodać symbol wykrzyknika (!) Przed nazwą arkusza).
- Można także dodawać elementy do pola listy za pomocą metody Add.Item.
- Jeśli chcesz zezwolić użytkownikowi na wybranie więcej niż jednego elementu, musisz wybrać opcję „ fmMultiSelectMult” w obszarze Multi-Select w oknie Właściwości.
Polecane artykuły
To jest przewodnik po polu listy VBA. Tutaj omawiamy sposób tworzenia pola listy w Excelu i VBA wraz z praktycznymi przykładami i szablonem Excela do pobrania. Możesz także przejrzeć nasze inne sugerowane artykuły -
- Jak korzystać z VBA Replace?
- Dodawanie pola listy w programie Excel
- Przewodnik po tablicach Excel VBA
- Lista rozwijana programu Excel