MyTetra Share
Делитесь знаниями!
Обращение к контролам с помощью объекта "Controls"
16.03.2019
23:43
Текстовые метки: Controls
Раздел: !Закладки - VBA

Вариант 1. Обращение к контролам с помощью объекта "Controls"

В этом варианте нужно, чтобы у лейбелов имена имели одинаковый корень (в этом пример у лейбелов корень "Label"), а после корня должен быть порядковый номер.

Private Sub CommandButton1_Click()
    Dim i As Long
    For i = 1 To 2 Step 1
        Me.Controls("Label" & i).Caption = "Caption"
    Next i
End Sub


Вариант 2. Обращение к контролам с помощью массива

Массив можно заполнять без цикла. Это я привёл пример с циклом.

Private Sub CommandButton1_Click()

    Dim arr() As MSForms.Label, i As Long
   
    '1. Создание ячеек в массиве.
    ReDim arr(1 To 2)
   
    '2. Привязка контролов к массиву.
    For i = 1 To UBound(arr) Step 1
        Set arr(i) = Me.Controls("Label" & i)
    Next i
   
    '3. Работа с контролами через массив.
    For i = 1 To UBound(arr) Step 1
        arr(i).Caption = "Caption"
    Next i

End Sub

Так же в этом разделе:
 
MyTetra Share v.0.52
Яндекс индекс цитирования