Конечно, вы можете создавать объекты в VBA:
Если вы назвали свой classModule: "YooClass", то вы можете создать объект:
Dim myObject as YooClass
Set myObject = new YooClass
Я также создаю некласс-модуль под названием ObjectFactory с таким кодом:
Public Function Yoo(...) As YooClass
Set Yoo= New YooClass
Call Yoo.Init(...)
End Function
это работает как конструктор. Так что я могу написать:
Dim myObject as YooClass
Set myObject = new Yoo(...)
или вызовите функцию, подобную этой
Call Yoo.MyFunction(...)
Это своего рода «статический» вызов функции (или как можно ближе к vba).
Если вам нужна дополнительная информация о классах в VBA (или в целом): для этого есть множество учебных пособий с множеством объяснений и примеров. Как это: https://analystcave.com/vba-vba-class-tutorial/