Потому что ошибки Dial-Up соединения начинаются с 600 (линия занята, удалённый компьютер не отвечает и т.п.), в частности последний раз была 678-я, при которой условие не сработало (хотя, повторюсь, при ручном запуске срабатывает). Машина не имеет доступа в Интернет, локалхост также пинговать не желательно, да и вообще пинг отпадает.
По сути это тоже самое, только вид сбоку, можно конечно попробовать, GOTO только на CALL заменить. Намёк на то, что ошибка может не попадать в мой начальный диапазон и нужно делать изначально диапазон отличный от 0, но я в предыдущем сообщении написал, что ошибка 100% попадает в диапазон, но не отрабатывает.