Dreadd
@Dreadd

Пользовательские типы данных — как получить значение по имени поля?

Здравствуйте!

Есть Excel и VBA, есть пользовательский тип данных, что-то вроде такого:

public type MyType
  varA as A
  varB as B
  varC as C
end type


Есть переменная, типа MyType
Далее, у меня есть переменная в которой лежит строка некая строка ("varA", например). Задача - получить значение того поля, название которого лежит в строке. Что-то вроде
s = "varB"
print(varofMyType.$s)


Как это сделать? Задача выросла из лабораторной задачи, где есть массив переменных некоторого пользовательского типа, который заполняется данными с листа. С этим все трудоемко но хорошо. А потом по условию задачи нужно "написать подпрограммы для сортировки массива по полю А, полю Б и полю С".
Мне зуд в ухе от такого ужаса не позволяет скопипастить три раза одну процедуру с захардкодеными именами полей. Использовать матрицы вместо типов, сортировать экселевскими функциями и так далее нельзя.

Прошу вашего совета! Спасибо.
  • Вопрос задан
  • 2733 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы