Visual Basic provides numerous ways to create an object and Set it to an object variable. We’re going to look at several of them, but first there’s one important truth that you should keep in mind at all times when dealing with objects: Visual Basic objects and classes, be they public or private, are all handled through the Component Object Model (COM).
Even in early versions before COM, Visual Basic had controls and forms that were like objects; however, the current implementation uses COM below the surface for everything. (Microsoft was just kidding when it told you not so long ago that you should call COM by the nonsense acronym OLE.)