1. The file name is probably best taken from the step file. E.g. Replace(aFilename, ".step", ".sldprt") 'Where aFilename is the name of the Step file.
2. Use this code to save an assembly document as a part:
swApp.SetUserPreferenceIntegerValue swSaveAssemblyAsPartOptions, swSaveAsmAsPart_AllComponents
Part.Extension.SaveAs Replace(aFilename, ".step", ".sldprt"), swSaveAsCurrentVersion, swSaveAsOptions_Silent, Nothing, nErrors, nWarnings
Make sure you have Option Compare Text at the top of the file so that it is case insensitive.