Codificați sau programați o listă de validare a datelor - Exemple de cod VBA

Cuprins

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
wave wave wave wave wave