У меня есть созданная мной пользовательская форма, которая содержит несколько текстовых полей.Каждое из этих полей называется name1, name2, name3 и т. Д.
Эта пользовательская форма вызывается из макроса Word, используемого для обработки данных.В зависимости от данных в файле, на котором выполняется макрос, я хочу, чтобы содержимое каждого массива отображалось в каждом из этих текстовых полей.
Я хочу иметь возможность динамически ссылаться на текстовые поля формы, чтобы я мог заполнять их из цикла, в отличие от необходимости делать отдельный оператор if для каждого отдельного значения / TextBox.
Так, например, вместо того, чтобы делать что-то вроде этого:
For p = 1 To count
if p=1 then
dForm.name1.Text=myVar(p)
end if
if p=2 then
dForm.name2.Text=myVar(p)
end if
.
.
.
etc.
Next p
Я хочу иметь возможность что-то гораздо более простое и эффективное, как:
For p = 1 To count
tempString = "name" & p
dForm.tempString.Text = myVar(p)
Next p
К несчастью, к сожалениюхотя я не могу понять, как это сделать.
Возможно ли это?Я надеялся, что что-то похожее на то, что можно сделать в Actionscript, сработает, но это не сработало (в Actionscript я просто сделал бы dForm ["name" + p] .Text = myVar [p]).
Есть идеи / предложения?Ничто из того, что я пробовал, не сработало, и я не смог ничего найти в Интернете по этому поводу.Я уверен, что нужно немного поработать, чтобы избежать необходимости выполнять невероятное количество операторов if («nameBextBoxes» - это лишь один из многих повторяющихся TextBoxes, который является частью моей формы, поэтому приходится делать операторы ifибо все они будут длиться вечно) ...