VBA and SolidWorks 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.