Face not the same as recorded macro

I have recorded a macro and ask the user to enter in info to get the desired sizes needed....the problem is I can run the macro with different sizes and 4 out 5 times it does it correct BUT I need it to work right every time....it appears that every now and then the faces are #'ed differently where the back face is name Face<1> but in the recorded marco is back face is named Face<2> so it the sketch and Extrude cut are being done on the wrong face.

Is there a fix for these or a different way to go about it?  I am attaching the macro.......if you run the macro everything is in inches and a part must be active.........our parts can range from 3" to 60" inches...I am also attaching a bmp file of what I used to create the macro.

SolidworksApi macros