Доброе утро,VBA Определить имена переменных из членов массива
Я использую VBA и моя проблема вкратце в том, что я хотел бы иметь немного кода, который будет создать новую переменную с именем каждый элемент массива.
Фон: Начальный массив, создаваемый при чтении XML-файла, который принимает информацию во всех дочерних нотах в качестве значения каждого члена массива. Так, например. Если я имел некоторые XML, такие как:
<dimensions>
<dimension>
dim1
</dimension>
<dimension>
dim2
</dimension>
<dimension>
dim3
</dimension>
</dimensions>
Мой код до сих пор создает и массив, позволяет называть его my_array() с 3-мя членами:
my_array(0)=dim1
my_array(1)=dim2
my_array(2)=dim3
Мой Выпуск: Что я бы тогда, как в быть в состоянии сделать, это перебрать все члены my_array() и создать новые переменные, названные после каждого члена. Таким образом, в результате этого простого случая заканчиваются 3 новые переменные, определенные dim1, dim2, dim3.
Моя попытка до сих пор:
dim i as integer
for i=0 to Ubound(my_array)
dim my_array(i) as string
next i
Я надеялся, что это будет определять новую переменную каждый раз пробеги цикла. Поскольку число членов my_array зависит от прочитанного файла, я не знаю, сколько переменных нужно будет определить, или я мог бы просто предопределить их для использования позже.
Является ли это возможным, я думаю об этом правильно?
Следующим шагом является то, что вместо определения простых переменных каждый цикл создавал бы новый словарь для использования позднее, но это обновление для более поздней даты.
Большое спасибо
Если бы вам удалось определить переменные таким образом, как бы вы их кодировали позже, учитывая, что вы не знаете их имена заранее? – GSerg
Я буду использовать тот же анализ для каждой переменной, созданной так, чтобы я знал, что список измерений содержится в my_array(). Я могу пропустить свой список измерений, передавая каждому члену my_array() различные функции для возврата результатов. –
Стандартным подходом к вещам в этих строках является создание словаря. Словарь по существу * представляет собой набор имен, которые могут быть определены и использованы в качестве переменных во время выполнения. Вы, кажется, знаете об этом, но относитесь к нему как к «обновлению на более позднюю дату». Зачем ждать? –