Acest tutorial va arăta cum să utilizați validarea datelor pentru a lucra cu liste drop-down în Excel folosind VBA.
Validarea datelor Excel vă permite să limitați ce valori pot fi introduse într-o celulă sau un interval. Puteți limita intrările la numere întregi pozitive, text, date și multe altele. În acest tutorial, vom analiza cum se creează o listă derulantă de validare a datelor într-o celulă utilizând VBA.
Notă: O alternativă la o listă derulantă de validare a datelor este un obiect ListBox. ListBoxes poate fi adăugat la foile de lucru Excel. ListBoxes poate declanșa macrocomenzi care rulează de fiecare dată când se modifică o valoare ListBox. ListBox-urile sunt utilizate și în Formularele de utilizator VBA.
Crearea unei liste derulante folosind VBA
Avem textul Fruit în celula A1 și vom crea o listă derulantă în celula A2, cu cinci intrări.
Vom folosi metoda Validation.Add și vom specifica că parametrul Type este xlValidateList. Puteți adăuga elementele specifice pe care le-ați dori în listă utilizând parametrul Formula1.
Următorul cod va crea o listă derulantă de validare a datelor în celula A2:
123456 | Sub DropDownListinVBA ()Gama ("A2"). Validare.Adăugare tip: = xlValidateList, AlertStyle: = xlValidAlertStop, _Formula1: = "Portocale, mere, mango, pere, piersici"Sfârșitul Sub |
Rezultatul este:
Populați o listă derulantă dintr-un interval numit în VBA
Puteți utiliza un interval numit care conține articolele, pentru a completa o listă derulantă în VBA. Avem gama numită Animale prezentată mai jos:
Trebuie să setăm parametrul Formula1 egal cu intervalul numit. Următorul cod va crea o listă derulantă de validare a datelor în celula A7 pe baza elementelor din intervalul numit:
123456 | Sub PopulateFromANamedRange ()Interval ("A7"). Validare.Adăugare tip: = xlValidateList, AlertStyle: = xlValidAlertStop, _Formula1: = "= Animale"Sfârșitul Sub |
Rezultatul este:
Eliminarea listei derulante
Puteți utiliza metoda Validation.Delete pentru a elimina lista derulantă din celulă. Următorul cod va elimina lista derulantă din celula A7 din exemplul de mai sus:
12345 | Sub RemoveDropDownList ()Interval ("A7"). Validare. ȘtergereSfârșitul Sub |