Автор Тема: ошибка при закритии файла  (Прочитано 303 раз)

Оффлайн Посетитель 17.01.2022

  • Посетитель форума
  • Сообщений: 3
ошибка при закритии файла
« : 17 Январь 2022, 00:56 »
при закрытии любого файла word начала  появляться ошибка

Compile error:
Ambiguous name detected: document_Close

уже неделю ломаю голову.
Подскажите пожалуйста, где искать, как исправить
Спасибо!

Оффлайн Администратор

  • Administrator
  • Сообщений: 2029
Re: ошибка при закритии файла
« Ответ #1 : 17 Январь 2022, 09:13 »
Написал вам два письма на почту с заголовком "Письмо с Форума по VBA, Excel и Word". Написал именно на почту, а не на форум.

Ошибка: Ambiguous name detected, сообщает, что внутри одного модуля находятся несколько процедур, у которых одинаковые имена. В вашем случае, внутри одного модуля находятся несколько процедур, у которых имя "document_Close".
Чтобы не было ошибки, оставьте внутри одного модуля только одну процедуру, у которой будет имя "document_Close", а остальные удалите (если вы по ошибке создали) или переименуйте.
Если кода в модуле много, то визуально искать процедуры может быть неудобно. Для этого используйте диалог "Найти" (запускается обычным сочетанием клавиш Ctrl+F).

Оффлайн Посетитель 17.01.2022

  • Посетитель форума
  • Сообщений: 3
Re: ошибка при закритии файла
« Ответ #2 : 17 Январь 2022, 23:32 »
насколько я понимаю, изменить саму процедуру нужно в normal.dotm. Но normal.dotm у меня пуст при открывании через ворд.

Оффлайн Администратор

  • Administrator
  • Сообщений: 2029
Re: ошибка при закритии файла
« Ответ #3 : 18 Январь 2022, 07:07 »
Вы VBA не занимались никогда? Не делали ни одного макроса?

Оффлайн Посетитель 17.01.2022

  • Посетитель форума
  • Сообщений: 3
Re: ошибка при закритии файла
« Ответ #4 : 19 Январь 2022, 00:19 »
к сожалению нет 

Оффлайн Администратор

  • Administrator
  • Сообщений: 2029
Re: ошибка при закритии файла
« Ответ #5 : 19 Январь 2022, 06:43 »
Процедуру "Document_Close" программисты создают в модуле документа. Модуль документа называется "ThisDocument".

В самом Ворде (не в VBA) отобразите на ленте вкладку "Разработчик": Файл - Параметры - Настроить ленту.
На вкладке "Разработчик" щёлкните кнопку "Visual Basic". Запустится программа "Microsoft Visual Basic for Applications" (VBA).
В левой области "Project -  ..." посмотрите модуль "ThisDocument". Щёлкните по нему два раза левой кнопкой мыши, справа отобразится содержимое модуля. Здесь, я предполагаю, должно быть две процедуры "Document_Close".

У вас сшибка происходит при работе с любым ворд-файлом или только с одним?
Если с любым, то, по идее, процедура "Document_Close" находится в Normal.
Если только с одним файлом, то процедура может находиться не в Normal, а в самом файле. Можно создавать макросы не только в Normal, но и в ворд-файле. У такого файла расширение docm или doc (в файле с расширением docx макросов не может быть).

Если в Normal и в файле в модуле "ThisDocument" пусто, то посмотрите другие файлы, которые отображаются в области "Project -  ...". Могут быть подключены Word-надстройки. Может быть в какой-то Word-надстройке ошибка.

Если проблема не найдена, сделайте скриншот област "Project -  ..." и выложите на форуме.