Този урок ще покаже как да използвате валидирането на данни за работа с падащи списъци в Excel с помощта на VBA.
Проверката на данни на Excel ви позволява да ограничите каква стойност (стойности) може да бъде въведена в клетка или диапазон. Можете да ограничите записите до положителни цели числа, текст, дати и много други. В този урок ще разгледаме как да създадем падащ списък за проверка на данни в клетка, използвайки VBA.
Забележка: Алтернатива на падащия списък за проверка на данни е обект ListBox. ListBoxes могат да се добавят към работни листове на Excel. ListBoxes може да задейства макроси, които се изпълняват при всяка промяна на стойност на ListBox. ListBoxes също се използват във VBA потребителски форми.
Създаване на падащ списък с помощта на VBA
Имаме текст Плодове в клетка А1 и ще създадем падащ списък в клетка А2 с пет записа.
Ще използваме метода Validation.Add и ще посочим, че параметърът Type е xlValidateList. Можете да добавите конкретните елементи, които искате в списъка си, като използвате параметъра Formula1.
Следният код ще създаде падащ списък за валидиране на данни в клетка A2:
123456 | Sub DropDownListinVBA ()Обхват ("A2"). Валидиране. Тип на добавяне: = xlValidateList, AlertStyle: = xlValidAlertStop, _Формула 1: = "Портокал, ябълка, манго, круша, праскова"End Sub |
Резултатът е:
Попълнете падащ списък от именован диапазон във VBA
Можете да използвате именован диапазон, съдържащ елементите, за да попълните падащ списък във VBA. По -долу имаме имена от животни от диапазона:
Трябва да зададем параметъра Formula1, равен на посочения диапазон. Следният код ще създаде падащ списък за валидиране на данни в клетка A7 въз основа на елементите в посочения диапазон:
123456 | Sub PopulateFromANamedRange ()Диапазон ("A7"). Валидиране. Тип на добавяне: = xlValidateList, AlertStyle: = xlValidAlertStop, _Формула 1: = "= Животни"End Sub |
Резултатът е:
Премахване на падащия списък
Можете да използвате метода Validation.Delete, за да премахнете падащия списък от клетката. Следният код би премахнал падащия списък от клетка A7 в горния пример:
12345 | Sub RemoveDropDownList ()Обхват ("A7"). Проверка. ИзтриванеEnd Sub |