Ick... but I understand your problem better now.

You could use the labelexist function with just a small modification to your script...

Code:

if labelexist(@userid)
GOTO "@USERID"
else
RETURN
endif

; Some User
:someuser
SHELL "NET USE P: \\someserver\share"
SHELL "NET USE S: \\anotherserver\SHARED"
RETURN

; Another User
:anotheruser
SHELL "NET USE P: \\someserver\share"
SHELL "NET USE S: \\anotherserver\SHARED"
RETURN

;etc
;etc

_________________________
(... better days ahead)