К объектам TextBox на форме можно обратиться по его имени Me.Controls( "TextBox" & i), или просто по индексу в коллекции создаваемых объектов Me.Controls(i) в порядке их добавления на форму. При этом индекс отображается в TabIndex.
Где то, что то я сделал и внутренний порядок изменился. Проставление TabIndex в рукопашную через свойства или View - Tab Order, не влияет на "внутренний счетчик".
Собственно вопрос - можно ли поменять индексы в коллекции элементов на форме?
Это необходимо для обработки их в цикле в определенном порядке.
Решение нашел Me.Controls( "TextBox" & i) = aArray(i) при заполнении формы, и на сайте у П.Ю. Климова через массив имен в заданном порядке при выгрузке в таблицы.
Где то, что то я сделал и внутренний порядок изменился. Проставление TabIndex в рукопашную через свойства или View - Tab Order, не влияет на "внутренний счетчик".
Собственно вопрос - можно ли поменять индексы в коллекции элементов на форме?
Это необходимо для обработки их в цикле в определенном порядке.
Решение нашел Me.Controls( "TextBox" & i) = aArray(i) при заполнении формы, и на сайте у П.Ю. Климова через массив имен в заданном порядке при выгрузке в таблицы.
Код |
---|
lCol = 1 For Each iName in aArray("TextBox1", "TextBox5",...) .Cells(lRow, lCol).Value = Me.Controls(iName).Value lCol = lCol +1 Next |