Iska
1 Добавил в конец
Pause, иначе не мог увидеть сообщений
2 Запуск батника производил без параметров, поэтому исправил (только для тестов) строку
Код:

set sFolder=%~dp0
2.1 На Win7 x64 получил
Can't find path to 7-Zip executive хотя 7-Zip у меня разумеется стоит и ключи на месте.
2.2 На Win XP получил
Can't find 7-Zip executive in [c:\Program Files\7-Zip] Причина: разные инсталляторы 7-Zip по разному пишут путь в реестр,
msi пишут с завершающим слешем, а
exe без оного.
3 Присвоение переменной
%PathTo7Zip% оригинально, но для начинающих будет непонятно. К тому же при любом (без знаний метода формирования переменной) изменении имени переменной и\или имени п\п
:GetPathTo7Zip приведет к непредсказуемым результатам.
4 После того как подправил получение пути батник заработал, но...
4.1 При отсутствии архивов в папке сообщение
Not found any 7-zip archivies in [%sFolder%] не вывелось
4.2 После добавления в папку запароленного архива (получилось это случайно), батник на нем остановился для ввода пароля. Ввел неправильный пароль (правильный просто не помню) и получил сообщение
Not found any 7-zip archivies in [E:\Temp\]
4.2.1 Но если этот запароленный архив не будет последним в списке обрабатываемых архивов, то сообщение снова не выводится
Немного подправил Ваш вариант и получилось это:
Код:

@Echo Off
Setlocal EnableExtensions
Set sFolder=%~1
:: Set sFolder=%~dp0
Set "flag="
Set "PathTo7Zip="
If Not Defined sFolder Call :_abort "Usage: %~nx0 [Path]"
If "%sFolder:~-1%"=="\" Set sFolder=%sFolder:~0,-1%
For %%i In ("%sFolder%\*.7z") Do Set flag=1
If Not Defined flag Call :_abort "Not found any 7-zip archivies in [%sFolder%]"
For /f "tokens=2*" %%i In ('Reg Query "HKEY_LOCAL_MACHINE\SOFTWARE\7-Zip" /v "Path" 2^>nul') Do Set PathTo7Zip=%%j
If Not Defined PathTo7Zip Call :_abort "Can't find path to 7-Zip executive"
If Not "%PathTo7Zip:~-1%"=="\" Set PathTo7Zip=%PathTo7Zip%\
If Not Exist "%PathTo7Zip%7z.exe" Call :_abort "Can't find 7-Zip executive in [%PathTo7Zip%]"
For %%i In ("%sFolder%\*.7z") Do "%PathTo7Zip%7z.exe" x "%%~fi" -o%date% -y -ppassword>nul
Call :_abort "Unpacking is complete"
:_abort
Echo.
Echo %~1
Echo.
Pause
Endlocal
Exit