Вопрос № 148010: Коллеги, прошу помочь с отладкой работающего кода макроса (в приложении ссылка на шаблон с макросом). Дело в том, что при работе с макросом из шаблона (шаблон открыт для редактирования), то все отлично и без ошибок. Но стоит разместить шаблон в па...
Вопрос № 148.010
Коллеги, прошу помочь с отладкой работающего кода макроса (в приложении ссылка на шаблон с макросом). Дело в том, что при работе с макросом из шаблона (шаблон открыт для редактирования), то все отлично и без ошибок. Но стоит разместить шаблон в папку автозагрузки шаблонов Word (StartUp), запустить редактор и кликнуть на кнопке макроса, то выводится соощение об ошибке "Object variable or With block variable not set". Однако все переменные объявлены, используются и очищаются в конце. Как избавиться
от этой ошибки? Предполагаю, что проблема кроется в одном участке кода (размещение всплывающего меню), но не уверен. Прошу вас, подскажите решение, так как самостоятельно исправить ошибку не могу. Код макроса небольшой и содержит все комментарии. Спасибо и надеюсь на вашу помощь.
Отвечает: HookEst
Здравствуйте, Кокин Антон Вадимович! После ошибки, со второго раза макрос работает нормально? У меня так. И ошибка не зависит от того открыт шаблон из автозапуска или просто. Проблема действительно в ActionControl. Похоже, что при первом запуске любого кода из шаблона, OnAction у кнопки не определен. решением может являться:
On Error Resume Next With CommandBars.ActionControl cb.ShowPopup .Left + 25, .Top + .Height - 24 End With If Err.Number >
0 Then cb.ShowPopup
в случае если произошла ошибка, мы просто покажем меню привязываясь не к позиции кнопки, а к позиции курсора мыши. это произойдет только в первый раз, потом все будет как надо. Успехов.
Ответ отправил: HookEst (статус: Специалист)
Ответ отправлен: 23.10.2008, 02:58 Оценка за ответ: 5 Комментарий оценки: Спасибо.
Увы, не сработало. Ошибка все равно есть. Я добавил еще проверку на наличие закладок перед отображением их списком в меню. И когда в самом начале код обработчик ошибок "On Error Resume Next" не закомментиран, то ошибок и не возникает, а когда он закомментирован, все та же ошибка. Никак не могу избавиться...