Почему не запускается макрос

от admin

Что делать если макрос не работает?

Отказ макроса или надстройки от выполнения своих функций имеет ряд причин. Рассмотрим наиболее распространенные из них.

Операционная система

Вплоть до Office 2016 пакет приложений Microsoft Office выпускается в различных версиях, для Windows и для Mac OS. Встроенный в приложения Office язык программирования при этом использует отличающиеся друг от друга библиотеки операционной системы. В связи с этим макрос/надстройка, написанная для работы в приложениях под Windows, может не работать, либо работать некорректно в MacOS. Проверьте операционную систему, для которой разрабатывался макрос/надстройка.

Разработчик пакета офисных приложений

Кроме Microsoft Office, пользователи достаточно часто используют альтернативные пакеты офисных приложений, такие как OpenOffice или LibreOffice. Приложения этих пакетов также имеют встроенные языки программирования, но эти языки отличаются друг от друга. Макросы или надстройки, написанные в Visual Basic for Application в приложениях пакета Microsoft Office, не будут работать в приложениях OpenOffice или LibreOffice. Уточните, для какого пакета офисных программ разработан макрос/надстройка.

Наличие компонента VBA

Для того, чтобы можно было запустить макрос или надстройку в каком-либо приложении пакета Office, необходимо, чтобы с этим пакетом был установлен компонент VBA – встроенный язык программирования Visual Basic for Application. В некоторых версиях Office этот пакет может устанавливаться отдельно. Проверьте, установлен ли этот компонент на компьютере. Нажмите сочетание клавиш Alt+F11, если после этого появляется окно редактора Visual Basic, то компонент установлен. В случае, если компонент отсутствует, его необходимо установить.

Версия Microsoft Office

Microsoft Office 2003 использует надстройки с расширением .xla (для Excel), .dot (для Word) и так далее. В более поздних версиях расширения надстроек изменились: .xlam (для Excel), .dotm (для Word). При установке надстроек старого формата в приложения Office 2007 и выше никаких проблем не происходит, а вот при попытке установить надстройку нового формата в приложения пакета Office 2003, возникает сообщение о том, что надстройки не обнаружены. Убедитесь в том, что используемая надстройка предназначена именно для той версии Office, в которой Вы работаете.

Активация Microsoft Office

Убедитесь в том, что Microsoft Office не требует активации. Проведите активацию, чтобы избежать каких-либо ограничений при использовании приложений.

Снятие блокировки файла

Файл, полученный с другого компьютера или из сети интернет может быть заблокирован. Чтобы разблокировать такой файл, необходимо кликнуть на нем правой кнопкой мыши и на вкладке «Общие» нажать кнопку «Разблокировать».

Система безопасности

Если все вышеизложенное не ответило на вопрос «почему не работает макрос?», то, скорее всего, дело в настройках системы безопасности. Перейдите на страницу https://macros-vba.ru/knigi/vba/nastrojki-sistemy-bezopasnosti и проделайте то, что написано в разделах «Надежные расположения» и «Настройка доступа к объектной модели VBA».

Используемые библиотеки

Еще одна ситуация при которой не работает макрос сопровождается появлением сообщения Can’t find project or library при этом тот же самый макрос может без нареканий работать на другом компьютере. В разных версиях приложений, в которые встроен VBA могут использоваться разные библиотеки, в связи с чем могут возникать подобные ошибки. Ошибку можно устранить, если в окне, которое следует за сообщением об ошибке снять флажки, установленные в пунктах, содержащих слово MISSING.

cant find project or library

Это окно также можно вызвать и самостоятельно, если в редакторе VB выбрать пункт меню Tools/References.

Кроме этого не все библиотеки подключаются автоматически. Если на компьютере разработчика макроса или надстройки какая-то библиотека была подключена вручную, затем макрос или надстройка были перенесены на другой компьютер, где эта библиотека не подключена, возникает такая-же ошибка.

Почему не запускается макрос

Сегодня прилетела куча обновлений MS Office (2007, 2010, 2013) после их установки перестали работать макросы в книгах Exel — кнопка макроса "не нажимается". При открытии файла никаких уведомлений о заблокированном содержимом нет.

Даже если принудительно в настройках безопасности разрешить все макросы — ничего не происходит, кнопки макросов по прежнему не нажимаются, никаких уведомлений о заблокированном содержимом нет. Где копать?

ps: обновления датированы 9 декабря 2014

  • Изменено Stanislav Timofeev 11 декабря 2014 г. 8:19

Ответы

Посмотрите английскую ветку обсуждения данного вопроса, там несколько временных решений

Станислав: Для Office 2013 — KB2726958

Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется как есть, без каких-либо гарантий. Не забывайте помечать сообщения как ответы и полезные, если они Вам помогли.

  • Изменено Elina Lebedeva 12 декабря 2014 г. 13:09
  • Предложено в качестве ответа Nutslyc 12 декабря 2014 г. 14:15
  • Помечено в качестве ответа Жук MVP, Moderator 12 декабря 2014 г. 15:00

Столкнулся с той же самой проблемой. Нашел решение — может кому пригодится:

1. Меняем все кнопки ActiveX на кнопки из группы "Элементы управления формы"

2. Меняем в коде функции, которые висели на кнопках, с Private на Public

Читать:
Onedrive exe что это

3. Переходим в режим конструктора, правой кнопкой по добавленной кнопке элемента управления формы -> назначить макрос

Как разрешить выполнение макросов в Excel?

В меню «Сервис» выберите «Макрос», в открывшемся вложенном меню нажмите «Безопасность…». В открывшемся окне установите средний или низкий уровень безопасности.

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

После установки уровня безопасности полностью закройте Excel и запустите снова, чтобы изменения вступили в силу.

Разрешение выполнения макросов Excel 2007-2016

На ленте выберите меню «Файл», в нем — кнопку «Параметры», в открывшемся окне «Параметры Excel» выберите строку «Центр управления безопасностью», на открывшейся странице нажмите кнопку «Параметры центра управления безопасностью». В открывшемся окне «Центр управления безопасностью» выберите строку «Параметры макросов» и отметьте пункт «Включить все макросы».

После установки уровня безопасности полностью закройте Excel и запустите снова, чтобы изменения вступили в силу.

Описание параметров макросов

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

Чтобы избежать заражения компьютера, проверяйте файлы, скачанные из неизвестных источников, антивирусной программой. Архивные файлы перед проверкой антивирусом лучше не распаковывать, чтобы случайно не запустить самораспаковывающийся архив до проверки.

Как включить макросы в Excel, Word, Power Point, open office?

Друзья привет. Если у вас при открытии документа офис возникают различные сообщения типа «не удалось определить надежность источника этого содержимого» значит документ содержит макросы.

По соображениям безопасности обычно в Office выключена поддержка макросов. На практике это означает, что содержимое документов ( код VBA) работать не будет. Если вы уверены что файлы попали к вам из безопасного источника — просто включаем их поддержку.

Как включить макросы в Excel 2013-2019?

Наиболее частое место использования макросов — пакет Microsoft Excel. Автоматизация расчетов и сокращение рутины — обычное дело. Чтобы макросы в файле начали работать заходим через меню «Файл» — «Параметры»…

… далее в центр управления безопасности…

… в «параметрах макросов» включаем поддержку всех макросов..

… и не забываем поставить галочку «Доверять доступ к объектной модели проектов VBA».

Активируем макросы в Microsoft Word 2013-2019

В Microsoft Word тоже нужно включать макросы если Вы планируете ими пользоваться. Делается все аналогичным образом.

В меню «Файл» открываем «Параметры» — «Центр управления безопасностью».

В «параметрах макросов» включаем «Все макросы» и доверяем доступ к объектной модели VBA.

Включаем макросы в Microsoft Power Point

В самом популярном приложении для создания презентаций так же есть возможность включить использование макрокоманд. Для этого нужно его открыть и через меню «Файл » проделать следующие манипуляции.

.. «Центр управления безопасностью», — параметры центра управления безопасностью.

Далее все делаем так как на фото ниже и сохраняем изменения.

Можно ли включить макросы в Open Office, Libre и им подобных?

Пакет Open Office является полноценным аналогом Microsoft Office. Он абсолютно бесплатный и много людей пользуется им.

Разработчики учли, что файлы созданные в word, excel могут содержать макросы. И конечно платформы с открытым исходным кодом умеют работать с такими файлами.

Особенностью Open Office является более гибкое управление макросами в процессе работы (через меню сервис)…

… поддержка макросов написанных на 4 различных языках программирования. Это интересно! Включать поддержку макросов нужно через Меню «Сервис»-» Параметры» — «Безопасность»:

Можно выбрать средний или низкий уровень безопасности.

Вкладка «Доверенные источники» позволит выбрать каталог, которые приложение будет считать безопасным. Если нужные документы положить туда то это и будет доверенным источником, на который программа ругаться не будет.

Можно использовать в качестве проверки и сертификаты безопасности, если таковые вам выдали. Ничего сложного. Предлагаю посмотреть небольшое видео

Как включать макросы в пакете Microsoft Office, Open Office видео

Итак мы убедились что в Microsoft Office для каждой разновидности програм входящих в пакет макросы нужно включать отдельно для каждой. В Open Office гораздо более гибкая настройка, к тому же поддерживающая макросы написанные на разных языках. Удачи!

Похожие статьи