/ / Лооп тхроугх Цонтролс у Екцел ВБА

Лооп тхроугх Цонтролс у Екцел ВБА

Са само неколико линија кода, можемо лако петља кроз контролу по принципу Екцел ВБА Усерформ. Кориснички облик који ћемо креирати изгледа овако:

Лооп тхроугх Цонтролс у Екцел ВБА

Да бисте креирали овај Усерформ, извршите следеће кораке.

1. Отворите Висуал Басиц Едитор. Ако Пројецт Екплорер није видљив, кликните Виев, Пројецт Екплорер.

2. Кликните на Инсерт, Усерформ. Ако се Тоолбок не појави аутоматски, кликните Виев, Тоолбок. Ваш екран треба да буде подешен као доле.

Усерформ Сцреен Сетуп у Екцел ВБА

3. Додајте ознаку, потврдите поља (прво на врху, друго испод прве и тако даље) и командно дугме. Када ово буде завршено, резултат мора бити у складу са приказом корисничког образца који је приказан раније. На пример, креирајте контролу квадратића кликом на ЦхецкБок из алатке. Затим, можете увући поље за потврду на Усерформ.

4. Можете променити имена и називе контрола. Имена се користе у Екцел ВБА коду. Написи су они који се појављују на вашем екрану. Добра је пракса да промените имена контрола, али овде није неопходно, јер у овом примеру имамо само неколико контрола. Да бисте променили натпис Усерформа, етикете, поља за потврду и командног дугмета, кликните Виев, Пропертиес Виндов и кликните на сваку контролу.

5. Да бисте приказали Усерформ, ставите командно дугме на свој радни лист и додајте следећу линију кода:

Private Sub CommandButton1_Click()

UserForm1.Show

End Sub

Сада смо направили први део Усерформ-а. Иако изгледа боље, ништа се неће догодити када кликнемо на дугме Обриши.

6. Отворите Висуал Басиц Едитор.

7. У Пројецт Екплорер-у двапут кликните на УсерФорм1.

8. Двапут кликните на дугме Обриши.

9. Додајте следеће линије кода:

Private Sub CommandButton1_Click()

Dim contr As control

For Each contr In UserForm1.Controls
    If TypeName(contr) = "CheckBox" Then
        contr.Value = False
    End If
Next

End Sub

Објашњење: Екцел ВБА петље кроз све контроле на Усерформу. Функција ТипеНаме се користи за филтрирање контролних поља. Ако контрола квадратића, Екцел ВБА се искључи. контр је случајно изабрана овде, можете користити било које име. Не заборавите да се позовете на ово име у остатку вашег кода.

Резултат када кликнете на дугме Обриши:

Лооп тхроугх Цонтролс Резултат

Такође прочитајте: