Я пытался решить эту проблему, но не могу найти решение. У меня есть UDT, определенный в нормальном модуле, и я хотел использовать его как параметр в Public Sub
в модуле класса. Затем я получаю ошибку компиляции:
Только публичные пользовательские типы, определенные в публичных объектных модулях, могут использоваться как параметры или тип возврата для общедоступных процедур модулей классов или как поля общедоступных пользовательских типов
Затем я пытаюсь переместить мой UDT в класс, объявленный как Private
. Я получаю эту ошибку компиляции:
Частные Enum и определенные пользователем типы не могут использоваться в качестве параметров или типов возврата для общедоступных процедур, публичных элементов данных или полей общедоступных пользовательских типов.
Я пытаюсь объявить его как Public
в классе и получить эту ошибку компиляции:
Невозможно определить открытый пользовательский тип в частном объектном модуле.
Итак, есть ли способ, чтобы публичный UDT использовался как параметр в общедоступном элементе в классе?