Zakoduj lub zaprogramuj listę sprawdzania poprawności danych - przykłady kodów VBA

Spisie treści

W tym samouczku zademonstrujemy, jak używać sprawdzania poprawności danych do pracy z listami rozwijanymi w programie Excel przy użyciu języka VBA.

Sprawdzanie poprawności danych programu Excel pozwala ograniczyć wartości, które można wprowadzić w komórce lub zakresie. Możesz ograniczyć wpisy do dodatnich liczb całkowitych, tekstu, dat i wielu innych. W tym samouczku przyjrzymy się, jak utworzyć listę rozwijaną sprawdzania poprawności danych w komórce za pomocą VBA.

Uwaga: Alternatywą dla listy rozwijanej sprawdzania poprawności danych jest obiekt ListBox. ListBoxes można dodawać do arkuszy programu Excel. ListBoxes może wyzwalać makra, które są uruchamiane za każdym razem, gdy zmienia się wartość ListBox. ListBoxes są również używane w formularzach użytkownika VBA.

Tworzenie listy rozwijanej za pomocą VBA

Mamy tekst Owoce w komórce A1 i zamierzamy utworzyć listę rozwijaną w komórce A2 z pięcioma wpisami.

Użyjemy metody Validation.Add i określimy, że parametr Type to xlValidateList. Możesz dodać określone pozycje do swojej listy za pomocą parametru Formuła1.

Poniższy kod utworzy listę rozwijaną sprawdzania poprawności danych w komórce A2:

123456 Podrzędna lista rozwijana w VBA()Range("A2").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _Formuła1:="Pomarańczowy,Jabłkowy,Mango,Gruszka,Brzoskwiniowy"Napis końcowy

Wynik to:

Wypełnij listę rozwijaną z nazwanego zakresu w VBA

Możesz użyć nazwanego zakresu zawierającego elementy, aby wypełnić listę rozwijaną w VBA. Poniżej znajduje się nazwany asortyment Zwierzęta:

Musimy ustawić parametr Formuły1 równy podanemu zakresowi. Poniższy kod utworzy listę rozwijaną sprawdzania poprawności danych w komórce A7 na podstawie elementów w nazwanym zakresie:

123456 Populacja podrzędnaOdANamedRange()Range("A7").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _Formuła1:="=Zwierzęta"Napis końcowy

Wynik to:

Usuwanie listy rozwijanej

Możesz użyć metody Validation.Delete, aby usunąć listę rozwijaną z komórki. Poniższy kod usunie listę rozwijaną z komórki A7 w powyższym przykładzie:

12345 Sub UsuńDropDownList()Zakres ("A7").Weryfikacja.UsuńNapis końcowy
wave wave wave wave wave