Как сбросить парольную защиту (пароль) модуля VBA в Excel 2010


Макросы и надстройки существенно расширяют функционал пакета Microsoft Office путем добавления новых возможностей, автоматизации рутинных задач и т.д.

Эти дополнения могут быть защищены паролем с целью, например, запрета несанкционированных изменений

Однако случаются ситуации, когда необходимо внести изменения в код, а пароль неизвестен – забыт, потерян, ушел вместе с предыдущим сотрудником и прочее.

Рассмотрим как достаточно просто сбросить пароль в модуле VBA в таком случае. Для работы будет необходим Far менеджер, скачать с официального сайта можно по ссылке. Желательно сделать резервную копию файла.

Имеется файл с расширением .xlsm – надстройка Excel 2010, в нем макрос на VBA, защищенный паролем.

Меняем расширение файла на .zip, игнорируя предупреждающее сообщение:



Вот так должно получится:



Запускаем FarManager, ищем наш файл, заходим внутрь архива по Enter, находим файл vbaProject.bin, нажимаем F4. Видим что-то подобное:




Ищем строку с определением ключа DPB. По клавише F7, вводим «DPB» и жмем Enter. Изменяем имя ключа на DPW.



Сохраняем файл по F2, выходим по Esc. На вопрос о сохранении файла в архиве жмем Ok


Переименовываем файл обратно в .xlsm и открываем.

Подтверждаем загрузку проекта, не смотря на некорректный ключ (который мы сами и сделали некорректным):



В окнах с сообщениями об ошибке смело жмем ОК.



Запускается VBA Editor и код макроса доступен для редактирования!

Чтобы убрать ругань при открытии проекта, нужно или совсем сбросить пароль или установить свой. Делается это через меню Tools Project Properties.



В открывшемся окне перейти на закладку Protection.

Чтобы сбросить пароль, нужно убрать галочку из окна Lock project for viewing. Чтобы задать свой пароль, введите его и подтвердите в полях ниже это же окна.