Аргумент пароля должен быть указан с ": =" - не просто "=".Это верно для аргументов методов в целом:
ws.protect Password := "edc1"
Чтобы компилятор ловил эти типы ошибок, всегда используйте Option Explicit в начале модулей, как JMax делал выше.Когда вы это сделаете, компилятор выдаст вам ошибку «Variable not Defined», когда вы забудете опцию «:» Explicit, сэкономит вам много времени с другими типами ошибок объявления переменных.Чтобы включить его для всех новых модулей, выберите Инструменты> Параметры> Изменить> Требовать объявление переменной в VBE.
Не могу понять, почему в коде без ":" назначен парольсовсем.Я ожидал, что лист будет защищен, но без пароля.