Simple Dynami c Имя переменной EXCEL VBA - PullRequest
0 голосов
/ 20 января 2020

Мне нужно установить имя переменной, которая изменяется в пределах al oop. Пожалуйста, посмотрите ниже:

Результат, который мне нужен:

Vari1 = 1
Vari2 = 2
Vari3 = 3

Что я пробовал:

for i = 1 to 3

Vari(i) = i      ' (Vari & i) also doesnt work

next i

Есть мысли?

Спасибо

1 Ответ

0 голосов
/ 20 января 2020

Сначала верните динамику c i из вашего кода (упрощенно ниже), затем измените размер массива:

Sub Test()

Dim Vari() As Long
Dim i As Long, x As Long

'Get value of i somehow
i = 3

ReDim Vari(1 To i)
For x = 1 To i
    Vari(x) = x
Next x

End Sub

Или заполните массив типов данных Variant напрямую через Evaluate:

Sub Test()

Dim Vari() As Variant
Dim i As Long

'Get value of i somehow
i = 3

Vari = Evaluate("TRANSPOSE(ROW(1:" & i & "))")

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...