У меня есть пользовательская форма с 500 + текстовыми полями, которые должны быть заполнены из некоторых ячеек на каком-то листе. Часть, где я отношусь к листам и ячейкам, понятна. Но я не понимаю, как заполнить 500 + текстовые поля, не ссылаясь на них один за другим.VBA Заполнение 500 + текстовых полей
Я не хочу, чтобы это сделать:
Textbox1.value = sheet1.cells(x,y)
Textbox2.value = sheet1.cells(x+1,y)
.
.
.
Я хочу, чтобы это сделать:
Textbox(x).value = sheet1.cells(x,y)
Конечно в цикле
Я попытался:
Private Sub UserForm_Activate()
Dim s As String
Dim m As Integer
Dim k As Integer
Dim l As Integer
s = "TextBox1"
For k = 1 To 10
s.Value = Sayfa9.Cells(l, m)
s = Replace(s, k, k + 1)
m = m + 1
Next k
end sub
Конечно, s.Value ошибочно. Как мне это сделать?
возможно дубликат [Перебор несколько командных кнопок, чтобы изменить их свойства на основе значений ячеек] (http://stackoverflow.com/questions/25266267/looping-through-multiple-command-buttons-to-change -their-properties-based-on-cel) ... и [Цитирование через многие ComboBoxes по имени] (http://stackoverflow.com/questions/25282385/looping-through-many-comboboxes-by-name). Тот же принцип применяется к TextBoxes. –
Нет, его нет. Как вы можете видеть, есть способы более простые способы, чем то, что, как говорят, дублируют. – user3146025