/ / Екцел ВБА Усерформ и опсег

Екцел ВБА Усерформ и опсег

Можете користити а РефЕдит контрола ин Екцел ВБА да бисте добили опсег од корисника. Тхе Усерформ ми ћемо креирати боје минималну вриједност домет ускладиштене у РефЕдит контроли.

Усерформ и Рангови у Екцел ВБА

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

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

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

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

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

Напомена: Ако ваш алатни оквир нема РефЕдит контролу, поставите референцу на РефЕдит контролу. Кликните Тоолс, Референце и потврдите контролу Реф Едит.

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

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

Private Sub CommandButton1_Click()

UserForm1.Show

End Sub

Сада ћемо креирати Суб УсерФорм_Инитиализе. Када користите методу Схов за Усерформ, овај суб ће аутоматски бити извршен.

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

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

8. Из падајуће листе изаберите ставку Усерформ. Изаберите Инитиализе са десне падајуће листе.

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

Private Sub UserForm_Initialize()

Sheet1.Cells.Font.Color = vbBlack
UserForm1.RefEdit1.Text = Selection.Address

End Sub

Објашњење: прва линија кода мења боју фонта свих ћелија на листу1 у црну. Друга линија кода добија адресу актуелног селекције и приказује је у РефЕдит контроли.

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

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

11. Двапут кликните на дугме Го.

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

Private Sub CommandButton1_Click()

Dim addr As String, rng, cell As Range, minimum As Double

addr = RefEdit1.Value
Set rng = Range(addr)
minimum = WorksheetFunction.Min(rng)

For Each cell In rng
    If cell.Value = minimum Then cell.Font.Color = vbRed
Next cell

End Sub

Објашњење: Прво, добијамо адресу из РефЕдит контроле и спремамо је у Стринг вариабле аддр. Даље, поставили смо рнг на опсег одређен у Цонтрол РефеДит. Затим, користимо функцију Мин. Радног листа како бисмо пронашли минималну вриједност у опсегу. Коначно, ми боје минималне вредности користећи петљу.

13. Двапут кликните на дугме Откажи.

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

Private Sub CommandButton2_Click()

Unload Me

End Sub

Објашњење: ова линија кода затвара Усерформ када кликнете на дугме Откажи.

15. Тестирајте Усерформ.

Резултат:

Усерформ и Рангови Резултат

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