Remember that IF ERRORLEVEL N command
test if the current ERRORLEVEL value is GREATER THAN OR EQUAL to the given number, so this command must always be executed in descending errorlevels order. You may change your IF
commands this way:
IF %ERRORLEVEL% EQU 1 GOTO allTasksReboot
IF %ERRORLEVEL% EQU 2 GOTO allTasks
.....
Or you may simplify your code a lot if you change your labels to a rigid-format ones and use a direct GOTO command:
CHOICE /C:1234567 /N /M "Choose number for installation type."
@echo You press: %ERRORLEVEL%
@pause
GOTO LABEL-%ERRORLEVEL%
:LABEL-1 allTasksReboot
@echo **************************************************************************
@echo All tasks - Unattended with reboot on finish
@echo **************************************************************************
@pause
goto scriptend
:LABEL-7 scriptend
@echo Lets exit...
@pause
:goexit