Классы VB6 не имеют никаких параметризованных конструкторов. Какое решение Вы выбрали для этого? Используя методы фабрики походит на очевидный выбор, но удивите меня!
Я обычно придерживаюсь фабричных методов, где я помещаю «конструкторы» для связанных классов в один и тот же модуль (расширение .BAS). К сожалению, это далеко не оптимально, поскольку вы не можете реально ограничить доступ к созданию обычных объектов в VB6 - вам просто нужно создать свои объекты только через фабрику.
Что еще хуже, так это необходимость переключаться между реальным объектом и вашим фабричным методом, поскольку организация в самой среде IDE в лучшем случае обременительна.
Как насчет использования доступного инициализатора класса? Он ведет себя как конструктор без параметров:
Private Sub Class_Initialize()
' do initialization here
End Sub