Have you ever noticed that annoying Dialog Box behavior where it (sometimes) populates with previously used values (usually when you don't want it to), rather than the initial values you specified...I finally figured a way around it.
Since SolidWorks actually keeps macros open in the background after you run them as discussed in:
The solution that seems to be working so far is to add a "Unload Userform1" line right before the "Load Userform1" call. If you have multiple "Load Userform1" line calls (if for whatever reason you are opening and closing a Userform multiple times during a single processing of the macro), then you only need to add the "Unload Userform1" line before the *first* "Load Userform1" call.
Later, Ken