Excel VBA — Скопируйте модуль из защищенного проекта VBA в новую книгу

#excel #vba #copy #password-protection

Вопрос:

Моя проблема с Excel VBA code protection :

В моем текущем проекте я написал некоторый код VBA (в WB1), который должен создать новую рабочую книгу (WB2). В этой новой книге создается кнопка (B2). Эта кнопка при нажатии должна выполнить некоторый код. Макрос, который должен быть выполнен, копируется из исходной рабочей книги (WB1). Все это прекрасно работает, когда код VBA в исходной книге (WB1) не защищен. Однако, когда я добавляю защиту в код VBA в исходной книге, модуль, содержащий макрос, не копируется в новую книгу (WB2). И, таким образом, кнопка (B2) не имеет никакой функциональности.

Мой вопрос: Сталкивался ли кто-нибудь из вас с такой же проблемой и есть ли другое решение, кроме удаления защиты из исходного кода VBA книги?

Я попытался подытожить рабочий процесс и проблему на этой картинке

Комментарии:

1. Предложите использовать рабочую книгу шаблона вместо ее повторного создания.

2. Привет, спасибо за комментарий! К сожалению, в моем случае невозможно работать с шаблонами, так как они должны храниться «где-то». Может быть, я не совсем ясно выразился в своем вопросе. WB2 не является воссозданием WB1. WB2 обладает совершенно новой функциональностью. И помимо этой функции у него должен быть макро (М2), который выполняется при нажатии кнопки B2. И этот макро-код содержится в WB1, который будет скопирован в WB2 при создании. Возможно, обходным путем было бы просто создать новый модуль в Wb2 и ввести код макро как string в модуль..