Преглеждайте контролите в Excel VBA - Лесни макроси на Excel

Съдържание

Само с няколко реда код можем лесно циклични контроли върху Потребителска форма на Excel VBA. Потребителската форма, която ще създадем, изглежда, както следва:

За да създадете тази потребителска форма, изпълнете следните стъпки.

1. Отворете редактора на Visual Basic. Ако Project Explorer не се вижда, щракнете върху View, Project Explorer.

2. Щракнете върху Вмъкване, Потребителска форма. Ако Toolbox не се появи автоматично, щракнете върху View, Toolbox. Екранът ви трябва да бъде настроен както е показано по -долу.

3. Добавете етикета, квадратчетата за отметка (първо отгоре, второ под първото и т.н.) и командния бутон. След като това приключи, резултатът трябва да бъде в съответствие с картината на Userform, показана по -рано. Например, създайте контрола за отметка, като щракнете върху CheckBox от кутията с инструменти. След това можете да плъзнете квадратче за отметка в Userform.

4. Можете да промените имената и надписите на контролите. Имената се използват в кода на Excel VBA. Надписите са тези, които се появяват на екрана ви. Добра практика е да промените имената на контролите, но това не е необходимо тук, защото в този пример имаме само няколко контроли. За да промените надписа на Userform, етикет, квадратчета за отметка и команден бутон, щракнете върху View, Properties Window и щракнете върху всяка контрола.

5. За да покажете Userform, поставете команден бутон на работния си лист и добавете следния код:

Частна подкоманда CommandButton1_Click ()
UserForm1.Show
End Sub

Вече създадохме първата част на Userform. Въпреки че вече изглежда добре, нищо няма да се случи, когато щракнем върху бутона Изчистване.

6. Отворете редактора на Visual Basic.

7. В Project Explorer щракнете двукратно върху UserForm1.

8. Щракнете двукратно върху бутона Изчистване.

9. Добавете следните кодови редове:

Частна подкоманда CommandButton1_Click ()
Dim contr Като контрол
За всеки Contr в UserForm 1. Контроли
Ако TypeName (contr) = "CheckBox" Тогава
contr.Value = False
Край Ако
Следващия
End Sub

Обяснение: Excel VBA преминава през всички контроли на Userform. Функцията TypeName се използва за филтриране на контролите на квадратчетата за отметка. Ако контролната кутия се контролира, Excel VBA премахва отметката от квадратчето. contr е произволно избран тук, можете да използвате всяко име. Не забравяйте да се позовавате на това име в останалата част от кода.

Резултат, когато щракнете върху бутона Изчистване:

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave