Apparently i have now answered my own question :D
For anybody else stuck like me, this now works with late binding:
Private Sub testSphere() Dim latePoint3dX As Double Dim latePoint3dY As Double Dim latePoint3dZ As Double Dim sphereSize As Double Dim elSphere As Object ' Setup data, will be passed in later sphereSize = 24.5 latePoint3dX = 100.5 latePoint3dY = 200.5 latePoint3dZ = 300.5 ' Create the sphere object Set elSphere = objMSApp.SmartSolid.CreateSphere(Nothing, sphereSize) ' Move the sphere from 0,0,0 to new x,y,z elSphere.Move objMSApp.Point3dFromXYZ(latePoint3dX, latePoint3dY, latePoint3dZ) ' Add sphere object to model objMSApp.ActiveModelReference.AddElement elSphere ' Clean up object Set elSphere = Nothing End Sub