VBA and SolidWorks x64
Microsoft Visual Basic for Applications (VBA) is a 32-bit application
that Microsoft is not porting to Windows x64.
If you are using SolidWorks x64 and your SolidWorks VBA application
is a DLL, then VBA will attempt to load the DLL into its process space
and fail (e.g., Active X error when attempting to instantiate an object).
The failure occurs because you attempted to mix 32-bit and 64-bit applications.
SolidWorks x64 can communicate with SolidWorks VBA if SolidWorks VBA
is a separate 32-bit process. All communication then goes across process
boundaries that Windows x64 can manage. If you move the object causing
the failure to an x64 executable (.exe) instead of a DLL, then your application
will work as expected.