#excel #vba
#преуспеть #vba
Вопрос:
У меня есть рабочая книга с поддержкой макросов, которая содержит несколько модулей, каждый модуль содержит несколько макросов. Моя проблема в том, что я открываю список макросов на вкладке разработчик, и никаких макросов для моей книги там больше нет. Когда я открываю VBA, я все еще вижу их там и связываю в дереве с рабочей книгой / проектом. Макросы также по-прежнему находятся в модулях.
Предыстория: сегодня, после небольшого редактирования в одном из макросов, я закрыл VBA, получил запрос о сбросе проекта, я нажал ok. Начались проблемы. Все макросы в книге, которые использовались для отображения в приглашении макросы на вкладке разработчик.
Комментарии:
1. Есть ли у вас
Option Private Module
поверх модулей? Если это так, вы можете либо удалить его, либо прокомментировать.2. Также обратите внимание, что подпрограммы, у которых есть параметры, не отображаются в диалоговом окне макросов. Однако в вашем случае (из изображения) по крайней мере одна подпрограмма не имеет параметров и, следовательно, должна появиться в диалоговом окне (если
Option Private Module
не объявлена)3. Спасибо за быстрый ответ. Я проверил модули, и, похоже, в них не введена эта строка.
4. Ваше описание того, как это началось, звучит как коррупция. Попробуйте открыть и восстановить функцию: support.microsoft.com/en-us/office /…
Ответ №1:
Думаю, я понял, в чем проблема. У меня возникла проблема с запуском макроса, для которого я решил восстановить более раннюю версию рабочей книги и сохранить ее поверх оригинала. Ну, макросы по-прежнему были гиперссылками на восстановленную версию рабочей книги, которая имела расширение имени, включающее дату / время, поэтому «принадлежала» этой рабочей книге.
Мое исправление: я щелкнул правой кнопкой мыши по макрообъекту (кнопке), назначил макрос, удалил текст гиперссылки и сохранил только имя макроса. Один за другим все макросы были восстановлены в рабочей книге. 🙂