Сообщество программистов Autodesk в СНГ
ADN Club => Inventor API => Тема начата: R.I.Chernov от 15-04-2015, 18:47:50
-
Доброго времени суток, уважаемые форумчане. Прошу вашей помощи в таком вот вопросе:
У меня есть 50 переменных: "a_1", "a_2", "a_3" .... "a_50". Можно ли комбинировать имя переменной при выполнении оператора "For...Next"?
Например что-то такое:
For i=1 to 50
"а_i" = i^2
Next
-
У меня есть 50 переменных: "a_1", "a_2", "a_3" .... "a_50".
Если столько переменных такого вида, то это означает одно - надо переделывать код:)
Для данного сценария нужно использовать массивы.
Код будет выглядеть как то так (не помню точно как на VB):
Array a
For i=1 to 50
a(i) = i^2
Next
-
Спасибо, Виктор, за ваш ответ. К сожалению, использование массивов я счел неудобным. Для описания примера я максимально упростил задачу, на деле она несколько иная. Хочется выяснить, возможно ли в теории такое "склеивание" имен переменных.
П.С. Идея переделывания кода обязательно будет рассмотрена :)
-
Хочется выяснить, возможно ли в теории такое "склеивание" имен переменных.
В чистом виде в VBA такого нет. Но можно использовать массивы, а можно коллекции (VBA!, не АИ) - ключ + значение. Имена ключей можно "склеивать". Или создать свой тип данных...
-
ключ + значение
Спасибо, Алексей. Буду пробовать.
-
Буду пробовать
Я давно использую, удобно. Правда в VBA есть ограничение, нельзя обновлять значение переменной, приходиться убивать и добавлять ее в коллекцию с новым значением...