Присвоить переменную имени элемента управления Texbox - PullRequest
0 голосов
/ 30 марта 2019

Я создаю программу с большим количеством ввода в текстовое поле, которое будет отправлено позже, и я хотел бы назначить имя текстового поля как переменную и использовать цикл для увеличения имени текстового поля с Texbox1 до Textbox 20

Dim Y As Integer
Dim X As String
Dim I As Integer
For I = 1 To 20
X = "TextBox" & Y
X.Value = ""
Next I

Ответы [ 2 ]

2 голосов
/ 30 марта 2019

Я думаю, что вы ищете что-то вроде (Me - это имя пользовательской формы):

Dim x As String
Dim i As Integer
For i = 1 To 20
   x = Me.Controls("TextBox" & i).Value
Next i
1 голос
/ 30 марта 2019

Использование онлайн-источника (https://www.ozgrid.com/VBA/control-loop.htm)

Вы можете просматривать их без добавления имени переменной:

Private Sub UserForm_Initialize()
Dim cCont As control
For Each cCont In Me.Controls
    cCont.Value = "foo"
Next cCont
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...