Excel сам отключает все макросы

Содержание

  1. Не работают макросы в Excel: кто виноват и что делать?
  2. Причины
  3. Что делать
  4. Включите опцию
  5. Добавьте нужный модуль в книгу
  6. Проверьте операционную систему
  7. Обратите внимание на разработчика
  8. Проверьте версию Майкрософт Офис
  9. Убедитесь в наличии пакета VBA
  10. Активируйте Офис
  11. Снимите блокировку файла
  12. Проверьте библиотеки
  13. Проверьте настройки безопасности
  14. Включение или отключение макросов в файлах Microsoft 365
  15. Изменение параметров макросов в центре управления безопасностью
  16. Включение и отключение макросов в программе Microsoft Excel
  17. Включение и отключение макросов через меню разработчика
  18. Включение и отключение макросов через параметры программы
  19. Включение и отключение макросов в других версиях Excel

Не работают макросы в Excel: кто виноват и что делать?

Не работают макросы в Excel? Включите их выполнение, добавьте специальный модель с кодом, проверьте версию ОС и Эксель, убедитесь в соответствии пакета приложений, активируйте Майкрософт Офис, снимите блокировку файла, проверьте систему безопасности и применяемые библиотеки. Ниже подробно рассмотрим, в чем могут быть причины подобной неисправности, и какие шаги предпринимать для ее устранения.

Причины

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

  1. Функция отключена.
  2. Отключение отслеживания событий.
  3. Устаревшая операционная система.
  4. Несоответствие разработчика пакета офисных приложений.
  5. Устаревшая версия Майкрософт Офис.
  6. Неактивированная версия Excel.
  7. Заблокированный файл.
  8. Неправильные настройки безопасности.
  9. Отсутствие необходимой библиотеки и т. д.

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

Что делать

Многие пользователи теряются в ситуации, когда не включаются или вообще не работают макросы в Excel. Такая проблема не дает нормально пользоваться приложением и заставляет искать альтернативные варианты.

Включите опцию

Первое, что необходимо сделать — включить функцию для обеспечения ее работоспособности. Здесь многое зависит от версии Эксель.

Если не работают макросы в Excel 2003, сделайте следующие шаги:

  1. Войдите в «Сервис».
  2. Перейдите в раздел «Безопасность».
  3. Кликните «Уровень макросов «Низкий».

В случае, когда не работают макросы в Excel 2007, включите их следующим образом:

  1. Жмите на кнопку «Офис».
  2. Войдите в параметры Excel.
  3. Кликните на «Центр управления безопасности».
  4. Войдите в «Параметры центра управления безопасностью».
  5. Жмите на «Параметры макросов».
  6. Кликните на «Разрешить все …».

В ситуации, когда не работают макросы в Excel 2016, сделайте следующие шаги:

  1. Войдите в раздел «Файл».
  2. Кликните на кнопку «Параметры».
  3. Зайдите в «Центр управления безопасностью».
  4. Войдите в «Параметры центра управления безопасностью».
  5. Кликните на «Параметры …».
  6. Жмите на «Разрешить все …».

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

Добавьте нужный модуль в книгу

Бывают ситуации, когда макросы включены, но не работают в Excel из-за отключения каким-либо элементом отслеживания событий. В таком случае сделайте следующее:

  1. Перейдите в редактор VBA с помощью клавиш Alt+F11.
  2. Вставьте указанный ниже код.
  1. Для выполнения кода поставьте курсор в любой точке между началом и концом.
  2. Кликните F5.

Проверьте операционную систему

В ситуации, когда не отображаются макросы в Excel, обратите внимание на тип операционной системы. К примеру, Майкрософт Офис, который подходит для Виндовс, на Мак ОС уже работать не будет. Причина в том, что в приложении используются разные библиотеки. Даже если надстройки и функционируют, могут быть сбои в работе. Вот почему при появлении проблем нужно проверить ОС на соответствие.

Обратите внимание на разработчика

Если в Экселе не работают макросы, причиной может быть другой разработчик. Так, пользователи Excel часто применяют OpenOffice или LibreOffice. Эти пакеты созданы на разных языках программирования, которые имеют индивидуальные особенности. Так, если надстройки написаны на Visual Basic for Application, он может не работать в указанных выше офисных приложениях. Вот почему необходимо уточнять, для какого пакета создан макрос / надстройка.

Проверьте версию Майкрософт Офис

В Макрософт Офис 2003 применяются надстройки xla для Excel. В современных версиях расширение поменялось на xlam. Если ставить макросы старого типа в приложения Офис 2007 и больше, никаких трудностей не происходит. Если же вы попытаетесь поставить новую надстройку на старую версию Excel, она зачастую не работает. Вот почему важно обратить внимание на этот параметр при выборе.

Убедитесь в наличии пакета VBA

Одной из причин, почему не запускается макрос в Excel, может быть отсутствие пакета VBA. Для успешного запуска надстройки необходимо, чтобы этот пакет был установлен. Иногда он уже установлен в Офис, но так происходит не всегда. Для проверки жмите комбинацию на Alt+F11. Если после этого появляется Visual Basic, компонент можно считать установленным. В ином случае его нужно поставить. Для этого:

  • Зайдите в «Пуск», а далее «Панель управления / Программы и компоненты».

  • Выберите программу Майкрософт Офис.
  • Жмите на кнопку «Изменить».

  • Запустить файл установки Setup.exe.
  • Кликните на «Добавить или удалить компоненты».
  • Выберите в списке Visual Basic и установите его.

Активируйте Офис

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

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

Учтите, что документ, полученный с другого ПК / ноутбука, может заблокироваться. Для разблокировки файла нужно нажать ПКМ и в разделе «Общие» кликнуть на «Разблокировать».

Проверьте библиотеки

В случае, когда параметры макросов не активны в Excel, причиной может быть появление ошибки «Can’t find project or library». При этом, надстройка работает на другом ПК / ноутбуке, а здесь возникают проблемы. Ошибку легко устранить, если в окне, которое идет за сообщением об ошибке, снять отметки в полях Missing. Для вызова окна можно выбрать пункт меню Tools / References.

Проверьте настройки безопасности

В ситуации, когда не работают макросы в Excel, можно добавить надежные расположения или настроить доступ к объектной модели VBA. Для этого в Офис 2007 необходимо сделать следующее:

  1. Войдите в Меню
  2. Кликните на пункт «Параметры».
  3. Жмите на «Центр управления безопасностью».
  4. Войдите в «Параметры центра управления безопасностью».
  5. Кликните на «Параметры макросов» и «Доверять доступ к объектной модели проектов».

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

В комментариях расскажите, какой из приведенных выше вариантов вам помог, и что еще можно сделать.

Источник

Включение или отключение макросов в файлах Microsoft 365

Макрос — это ряд команд, которые можно использовать для автоматизации повторяющейся задачи и могут выполняться при выполнении задачи. Макросы служат для автоматизации часто выполняемых задач, что позволяет сэкономить время за счет сокращения объема работы с клавиатурой и мышью.

Однако некоторые макросы могут представлять угрозу безопасности. Макросы часто используются злоумышленниками для тихой установки вредоносных программ, таких как вирус, на компьютере или в сети организации.

Предупреждение: Никогда не включайте макросы в файле Microsoft 365, если вы не знаете, что делают эти макросы. Непредвиденные макросы могут представлять значительную угрозу безопасности. Для просмотра или изменения файла не нужно включать макросы; только в том случае, если вам нужны функциональные возможности, предоставляемые макросом. Дополнительные сведения см. в статье Защита от макровирусов.

Сведения о создании макросов см. в статье Краткое руководство: создание макроса.

Сведения об использовании макросов на компьютере под управлением Windows S см. в статье Блокировка подозрительных макросов в Office на Windows 10 S.

Изменение параметров макросов в центре управления безопасностью

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

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

Откройте вкладку Файл.

Нажмите кнопку Параметры.

Затем выберите пункты Центр управления безопасностью и Параметры центра управления безопасностью.

В центре управления безопасностью щелкните элемент Параметры макросов.

Выберите нужный вариант, а затем нажмите кнопку ОК.

Примечание: Варианты немного отличаются в Excel, мы будем называть их, как мы идем.

Отключить все макросы без уведомления. Этот параметр отключает макросы и связанные с ними оповещения безопасности.

В Excel этот параметр — Отключить макросы VBA без уведомления и применяется только к макросам VBA.

Отключить все макросы с уведомлением. Этот параметр отключает макросы без отключения оповещений системы безопасности, которые будут появляться при необходимости. Так вы можете включать макросы, когда это требуется.

В Excel этот параметр — Отключить макросы VBA с уведомлением , и он применяется только к макросам VBA.

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

В Excel этот параметр — Отключить макросы VBA, кроме макросов с цифровой подписью , и он применяется только к макросам VBA.

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

В Excel этот параметр — Включить макросы VBA (не рекомендуется, может выполняться потенциально опасный код) и применяется только к макросам VBA.

Excel также установлен флажок Включить макросыExcel 4.0 при включении макросов VBA. Если установить этот флажок, все приведенные выше параметры для макросов VBA также будут применяться к макросам Excel 4.0 (XLM).

Если этот флажок не установлен, макросы XLM отключены без уведомления.

Доверять доступ к объектной модели проектов VBA Запретить или разрешить программный доступ к объектной модели Visual Basic для приложений (VBA) из клиента автоматизации. Этот параметр безопасности предназначен для кода, написанного для автоматизации программы Microsoft 365 и управления средой VBA и объектной моделью. Это параметр для отдельных пользователей и приложений, который по умолчанию запрещает доступ, препятствуя созданию несанкционированных программ вредоносных самореплицируемых кодов. Чтобы клиенты автоматизации получили доступ к объектной модели VBA, пользователь, выполняя код, должен предоставить доступ. Чтобы включить доступ, установите флажок.

Примечание: В Microsoft Publisher и Microsoft Access параметр Доверять доступ к объектной модели проектов VBA отсутствует.

Источник

Включение и отключение макросов в программе Microsoft Excel

Макросы – это инструмент для создания команд в приложении Microsoft Excel, которые позволяют значительно сократить время на выполнение задач, автоматизировав процесс. Но, в то же время, макросы являются источником уязвимости, которой могут воспользоваться злоумышленники. Поэтому, пользователь на свой страх и риск должен решить применять данную возможность в конкретном случае, или нет. Например, если он не уверен в благонадежности открываемого файла, то лучше макросами не пользоваться, ведь они могут послужить причиной заражения компьютера вредоносным кодом. Учитывая это, разработчики предоставили возможность пользователю самому решать вопрос включения и отключения макросов.

Включение и отключение макросов через меню разработчика

Основное внимание мы уделим процедуре включения и отключения макросов в самой популярной и распространённой на сегодня версии программы — Excel 2010. Потом, более бегло поговорим о том, как это сделать в других версиях приложения.

Включить или отключить макросы в Microsoft Excel можно через меню разработчика. Но, проблема состоит в том, что по умолчанию данное меню отключено. Чтобы его включить, переходим во вкладку «Файл». Далее, кликаем по пункту «Параметры».

В открывшемся окне параметров, переходим в раздел «Настройка ленты». В правой части окна данного раздела устанавливаем галочку около пункта «Разработчик». Жмем на кнопку «OK».

После этого, на ленте появляется вкладка «Разработчик».

Переходим во вкладку «Разработчик». В самой правой части ленты расположен блок настроек «Макросы». Чтобы включить или отключить макросы, кликаем по кнопке «Безопасность макросов».

Открывается окно центра управления безопасностью в разделе «Макросы». Для того, чтобы включить макросы, переставляем переключатель в позицию «Включить все макросы». Правда, данное действие разработчик не рекомендует выполнять в целях безопасности. Так что, всё выполняется на свой страх и риск. Жмем на кнопку «OK», которая расположена в нижнем правом углу окна.

Отключаются макросы тоже в этом же окне. Но, существует три варианта отключения, один из которых пользователь должен выбрать в соответствии с ожидаемым уровнем риска:

  1. Отключить все макросы без уведомления;
  2. Отключить все макросы с уведомлением;
  3. Отключить все макросы, кроме макросов с цифровой подписью.

В последнем случае, макросы, у которых будет иметься цифровая подпись, смогут выполнять задачи. Не забываем жать на кнопку «OK».

Включение и отключение макросов через параметры программы

Существует ещё один способ включения и отключения макросов. Прежде всего, переходим в раздел «Файл», и там жмем на кнопку «Параметры», как и в случае включения меню разработчика, о чем мы говорили выше. Но, в открывшемся окне параметров, переходим не в пункт «Настройка ленты», а в пункт «Центр управления безопасностью». Кликаем по кнопке «Параметры центра управления безопасностью».

Открывается то же самое окно Центра управления безопасностью, в которое мы переходили через меню разработчика. Переходим в раздел «Параметры макросов», и там включаем или отключаем макросы тем же способом, как делали это в прошлый раз.

Включение и отключение макросов в других версиях Excel

В других версиях программы Excel процедура отключения макросов несколько отличается от указанного выше алгоритма.

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

Для того, чтобы включить или отключить макросы в программе Excel 2007, нужно сразу кликнуть по логотипу Microsoft Office в верхнем левом углу окна, а затем в нижней части открывшейся страницы нажать на кнопку «Параметры». Далее, открывается окно Центра управления безопасностью, и дальнейшие действия по включению и отключению макросов практически ничем не отличаются от описанных для Excel 2010.

В версии Excel 2007 достаточно просто последовательно перейти по пунктам меню «Сервис», «Макрос» и «Безопасность». После этого, откроется окно, в котором нужно выбрать один из уровней безопасность работы макросов: «Очень высокая», «Высокая», «Средняя» и «Низкая». Эти параметры соответствуют пунктам параметров макросов более поздних версий.

Как видим, включить макросы в последних версиях программы Excel несколько сложнее, чем это было в предыдущих версиях приложения. Это связано с политикой разработчика на увеличение уровня безопасности пользователя. Таким образом, макросы может включить только более или менее «продвинутый» пользователь, который способен объективно оценить риски от выполняемых действий.

Источник

 

edkudin

Пользователь

Сообщений: 182
Регистрация: 27.07.2014

New, При чём здесь разблокировка файлов из интернета? Я запускаю эксель со значка, потом выбираю в нём создать новый документ и он всё блокирует и отключает все макросы.
А на ноутбуке у меня всё нормально, всё работает, и все позиции меню одинаковые. Вы не правы с тем, что-бы задействовать последнюю позицию в выборе макросов, если её выбрать, то он будет (точнее должен) запускать документ с макросами ничего не спрашивая, а в той позиции что у меня на скрине он должен выдавать сообщение «разрешить запуск ?» но всё блокируется прямо на этапе создания нового документа.

Изменено: edkudin11.09.2022 15:53:41

Макросы – это инструмент для создания команд в приложении Microsoft Excel, которые позволяют значительно сократить время на выполнение задач, автоматизировав процесс. Но, в то же время, макросы являются источником уязвимости, которой могут воспользоваться злоумышленники. Поэтому, пользователь на свой страх и риск должен решить применять данную возможность в конкретном случае, или нет. Например, если он не уверен в благонадежности открываемого файла, то лучше макросами не пользоваться, ведь они могут послужить причиной заражения компьютера вредоносным кодом. Учитывая это, разработчики предоставили возможность пользователю самому решать вопрос включения и отключения макросов.

Включение и отключение макросов через меню разработчика

Основное внимание мы уделим процедуре включения и отключения макросов в самой популярной и распространённой на сегодня версии программы — Excel 2010. Потом, более бегло поговорим о том, как это сделать в других версиях приложения.

Включить или отключить макросы в Microsoft Excel можно через меню разработчика. Но, проблема состоит в том, что по умолчанию данное меню отключено. Чтобы его включить, переходим во вкладку «Файл». Далее, кликаем по пункту «Параметры».

В открывшемся окне параметров, переходим в раздел «Настройка ленты». В правой части окна данного раздела устанавливаем галочку около пункта «Разработчик». Жмем на кнопку «OK».

После этого, на ленте появляется вкладка «Разработчик».

Переходим во вкладку «Разработчик». В самой правой части ленты расположен блок настроек «Макросы». Чтобы включить или отключить макросы, кликаем по кнопке «Безопасность макросов».

Открывается окно центра управления безопасностью в разделе «Макросы». Для того, чтобы включить макросы, переставляем переключатель в позицию «Включить все макросы». Правда, данное действие разработчик не рекомендует выполнять в целях безопасности. Так что, всё выполняется на свой страх и риск. Жмем на кнопку «OK», которая расположена в нижнем правом углу окна.

Отключаются макросы тоже в этом же окне. Но, существует три варианта отключения, один из которых пользователь должен выбрать в соответствии с ожидаемым уровнем риска:

  1. Отключить все макросы без уведомления;
  2. Отключить все макросы с уведомлением;
  3. Отключить все макросы, кроме макросов с цифровой подписью.

В последнем случае, макросы, у которых будет иметься цифровая подпись, смогут выполнять задачи. Не забываем жать на кнопку «OK».

Включение и отключение макросов через параметры программы

Существует ещё один способ включения и отключения макросов. Прежде всего, переходим в раздел «Файл», и там жмем на кнопку «Параметры», как и в случае включения меню разработчика, о чем мы говорили выше. Но, в открывшемся окне параметров, переходим не в пункт «Настройка ленты», а в пункт «Центр управления безопасностью». Кликаем по кнопке «Параметры центра управления безопасностью».

Открывается то же самое окно Центра управления безопасностью, в которое мы переходили через меню разработчика. Переходим в раздел «Параметры макросов», и там включаем или отключаем макросы тем же способом, как делали это в прошлый раз.

Включение и отключение макросов в других версиях Excel

В других версиях программы Excel процедура отключения макросов несколько отличается от указанного выше алгоритма.

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

Для того, чтобы включить или отключить макросы в программе Excel 2007, нужно сразу кликнуть по логотипу Microsoft Office в верхнем левом углу окна, а затем в нижней части открывшейся страницы нажать на кнопку «Параметры». Далее, открывается окно Центра управления безопасностью, и дальнейшие действия по включению и отключению макросов практически ничем не отличаются от описанных для Excel 2010.

В версии Excel 2007 достаточно просто последовательно перейти по пунктам меню «Сервис», «Макрос» и «Безопасность». После этого, откроется окно, в котором нужно выбрать один из уровней безопасность работы макросов: «Очень высокая», «Высокая», «Средняя» и «Низкая». Эти параметры соответствуют пунктам параметров макросов более поздних версий.

Как видим, включить макросы в последних версиях программы Excel несколько сложнее, чем это было в предыдущих версиях приложения. Это связано с политикой разработчика на увеличение уровня безопасности пользователя. Таким образом, макросы может включить только более или менее «продвинутый» пользователь, который способен объективно оценить риски от выполняемых действий.

Отблагодарите автора, поделитесь статьей в социальных сетях.

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

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

Microsoft Office снабжен своей собственной системой безопасности. Задача этой системы заключается в противодействии макровирусам. Макровирусы – это вредоносные программы, написанные на языке VBA. Для своего распространения и перемещения от одного зараженного файла к другому макровирусы используют возможности языка программирования. Наибольшее распространение получили макровирусы, созданные для MS Word и MS Excel. Макровирусы — это главная проблема, которую создал язык программирования VBA, встроенный в офисные программы. Безопасная работа с макросами заключается в соблюдении простого правила: запрещать выполнение макросов, если их назначение Вам не известно.

При открытии документа, содержащего подозрительный (неизвестный) макрос, система безопасности с настройками, установленными по умолчанию, этот макрос блокирует и выводит предупреждающее сообщение.

Уровни безопасности

В системе безопасности предусмотрено четыре уровня защиты, для того чтобы их увидеть в MS Word 2003 либо MS Excel 2003, зайдем в меню Сервис/Макрос/Безопасность

Для просмотра уровней системы безопасности в MS Word 2007 и MS Excel 2007 нажимаем кнопку Microsoft Office , далее кнопку Параметры Word (Excel)/Центр управления безопасностью/Параметры центра управления безопасностью, после чего появится окно настройки параметров макросов. Описания уровней безопасности говорят сами за себя.

Уже замечено, что оптимальное соотношение между удобством и безопасностью при работе с макросами, достигается выбором второго пункта, который и установлен по умолчанию — «Отключить все макросы с уведомлением». В этом случае при запуске файлов, содержащих макросы, система выдает предупреждающее сообщение, а Вы в свою очередь на выбор можете либо подтвердить отключение макросов, либо разрешить им выполняться. Если подобные сообщения системы безопасности покажутся вам слишком назойливыми, можно выбрать опцию «Включить все макросы», что не рекомендуется системой безопасности. Так вы ставите вашу систему под угрозу. Даже используя антивирусное программное обеспечение, не следует забывать о потенциальной опасности макровирусов. Теперь Вы знаете о плюсах и минусах разных уровней системы безопасности и поработав какое-то время с макросами, сможете выбрать для себя наиболее удобный из предложенных вариантов. Выбор уровня защиты зависит только от Вас.

Цифровые подписи макросов

Особый интерес в окне «Центр управления безопасностью» представляет опция «Отключить все макросы кроме макросов с цифровой подписью». Выбрав эту опцию, Вы сможете спокойно запускать макросы, которые вы создали и подписали сами. Также можно использовать «Надежные расположения», где Вы можете хранить проверенные и надежные макросы и надстройки.

Надежные расположения

Добавлю несколько слов о разделе «Надежные расположения». В этом разделе прописываются пути к папкам, которые считаются надежными источниками для открытия файлов. Надежные расположения можно добавлять, удалять, изменять и отключать. Использование надежных расположений также снизит вероятность возникновения проблем при выполнении макросов. Добавляются надежные расположения в параметрах центра управления безопасностью. На видео показано как добавить надежные расположения в Microsoft Excel 2013 , но в других версиях и в других приложениях всё делается аналогично.

Настройка доступа к объектной модели VBA

И еще один нюанс, для корректной работы макросов и надстроек нужно установить доверие к объектной модели проектов VBA. Сделать это можно следующим образом:

Для приложений Office 2003 – Сервис/Макрос/Безопасность/Надежные издатели/Доверять доступ к Visual Basic Project

Для приложений Office 2007 – Меню/Параметры/Центр управления безопасностью/Параметры центра управления безопасностью/Параметры макросов/Доверять доступ к объектной модели проектов VBA (установить галочку).

В приложениях пакета MS Office 2010 расположение центра управления безопасностью, аналогично расположению его в версии 2007, с той лишь разницей, что кнопка Office изменена на вкладку с названием «Файл», выделенную зеленым цветом.

Таким образом, большую часть проблем связанных с работоспособностью макросов решит установка опции «Доверять доступ к проектам VBA» и некоторое снижение уровня безопасности.

Microsoft Excel – это популярное для работы с таблицами приложение, используемое в офисах и дом.

Microsoft Excel – это популярное для работы с таблицами приложение, используемое в офисах и домах 90% людей. Несмотря на то что программе уже 34 года, новые возможности продолжают добавляться в обновлениях. Поэтому программа до сих пор популярна. Чтобы облегчить себе работу, нужно знать, как работают эти опции. Для начала расскажем о том, что такое макросы, а потом – как включить макросы в Excel 2010, 2007, 2003.

Что такое макрос?

До того как включить макросы в Excel, необходимо узнать, для чего они нужны. Макросы – это сохраненные в строках таблицы заранее созданные последовательности действий с данными. Реализованы на языке VBA, что позволяет работать не только с командами Экселя, но и других приложений Office, поддерживающих этот язык. Используя макросы, можно настроить автоматическое форматирование строк таблицы, отправку по почте, или создание презентации.

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

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

  1. Отключить макросы без уведомления. Применяется для таблиц, автор которых неизвестен. Деактивирует сохраненные в ячейках макросы, не предупреждая об этом. Пользуйтесь им при опасности вирусов в таблице.
  2. Отключить макросы с уведомлением. Этот режим выбран стандартно. Предлагает выключать макросы, но перед этим запрашивает разрешения пользователя. С ним вы сможете решать, оставлять ли, или нет отдельно каждый макрос.
  3. Отключить макросы, кроме макросов с цифровой подписью. Похож на предыдущий, но автоматически разрешает использование макросов, подписанных цифровой подписью предприятия, доверие которому вы уже подтвердили.
  4. Включить макросы. Из названия понятно, что параметр разрешает использование макрокоманд, записанных в таблицу.
  5. Доверять доступ к объектной модели проектов VBA.

Показатель для разработчиков, открывающий доступ таблицы к программам, написанным для модели VBA любого приложения, по желанию пользователя. Это позволяет программисту настраивать, какой код имеет доступ к макросам, и куда макросы могут отправлять данные. При этом взломать или повредить работу команд программиста практически невозможно. Но новичку в VBA лучше не использовать этот параметр.

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

Существует три версии Экселя, где активация макросов отличается друг от друга. Сначала рассмотрим, как включить макросы в Excel 2010.

Как включить макросы в MS Excel 2010

В 2010 версии Экселя разработчики сделали упор на безопасность, поэтому для включения макросов нужно сделать следующее:

  • В верхнем меню приложения нажмите «Файл».
  • Откроется список, выбрать предпоследний пункт – «Параметры».
  • Нажмите, и попадете в окно «Параметры Excel». Слева перейдите в «Центр управления безопасностью».

  • Справа в тексте кликните «Параметры. ».
  • Откроется еще одно меню, где нужно выбрать «Параметры макросов».
  • Отметьте один из пунктов, нажмите «Ок».

  • Закройте и запустите Excel снова, для вступления изменений в силу.

Как включить макросы в MS Excel 2007

Здесь способ не сильно отличается от того, как включить макросы в Excel 2010:

  • Нажмите кнопку «Файл» (круглая желтая кнопка с цветными квадратами) слева сверху окна.
  • В правой нижней части меню кликните на «Параметры Excel».

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

  • Перезапустите Эксель.

Как включить макросы в MS Excel 2003

2003 Эксель уступает в безопасности 2010-му, и включить макросы в нем легче, но важно тщательно проверять файлы на вирусы, пользуясь им. Включить исполнение макросов можно так:

  1. В открытом приложении нажмите на кнопку «Сервис» в верхнем меню.
  2. В выпадающем списке нажмите на «Макрос», и «Безопасность».
  3. Откроется меню безопасности, где нужно отметить уровень безопасности для макросов.
  4. Нажмите «Ок», и перезайдите в Эксель.

Способы

Включить макрокоманды можно одним из трех путей:

  • во время показа окна сообщения;
  • с помощью Backstage;
  • когда появляется предупреждение системы безопасности.

Во время показа окна сообщения

Дополнительный способ работает, когда в Экселе открывается файл, содержащий макрокоманды. В верхней части листа появляется желтая карточка с надписью «Предупреждение системы безопасности». Кликните по «Включить содержимое», и они активируются.

С помощью Backstage

Если открыть книгу с макросами, в меню «Файл» появляется сообщение, позволяющее активировать их. Для этого сделайте следующее:

  1. Раскройте меню «Файл» — левая в ленте вверху страницы.
  2. В окне «Предупреждение системы безопасности» кликните по «Включить содержимое».
  3. Появится диалоговое меню, где необходимо будет отметить «Всегда включать активное содержимое этого документа».

После того как все получилось, перезагрузите приложение.

Активировать на одну сессию при появлении предупреждения системы безопасности

Способ включения только на один раз для одной книги:

  1. Раскройте меню «Файл» — левая в ленте вверху страницы.
  2. В окне «Предупреждение системы безопасности» кликните по «Включить содержимое».
  3. Перейдите в раздел «Дополнительные параметры».
  4. В появившемся поле активируйте пункт «Включить содержимое для этого сеанса» по очереди для каждого из макросов.
  5. Сохраните изменения, кликнув «Ок».

Не работают макросы в Excel? Включите их выполнение, добавьте специальный модель с кодом, проверьте версию ОС и Эксель, убедитесь в соответствии пакета приложений, активируйте Майкрософт Офис, снимите блокировку файла, проверьте систему безопасности и применяемые библиотеки. Ниже подробно рассмотрим, в чем могут быть причины подобной неисправности, и какие шаги предпринимать для ее устранения.

Причины

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

  1. Функция отключена.
  2. Отключение отслеживания событий.
  3. Устаревшая операционная система.
  4. Несоответствие разработчика пакета офисных приложений.
  5. Устаревшая версия Майкрософт Офис.
  6. Неактивированная версия Excel.
  7. Заблокированный файл.
  8. Неправильные настройки безопасности.
  9. Отсутствие необходимой библиотеки и т. д.

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

Что делать

Многие пользователи теряются в ситуации, когда не включаются или вообще не работают макросы в Excel. Такая проблема не дает нормально пользоваться приложением и заставляет искать альтернативные варианты.

Включите опцию

Первое, что необходимо сделать — включить функцию для обеспечения ее работоспособности. Здесь многое зависит от версии Эксель.

Если не работают макросы в Excel 2003, сделайте следующие шаги:

  1. Войдите в «Сервис».
  2. Перейдите в раздел «Безопасность».
  3. Кликните «Уровень макросов «Низкий».

В случае, когда не работают макросы в Excel 2007, включите их следующим образом:

  1. Жмите на кнопку «Офис».
  2. Войдите в параметры Excel.
  3. Кликните на «Центр управления безопасности».
  4. Войдите в «Параметры центра управления безопасностью».
  5. Жмите на «Параметры макросов».
  6. Кликните на «Разрешить все …».

В ситуации, когда не работают макросы в Excel 2016, сделайте следующие шаги:

  1. Войдите в раздел «Файл».
  2. Кликните на кнопку «Параметры».
  3. Зайдите в «Центр управления безопасностью».
  4. Войдите в «Параметры центра управления безопасностью».
  5. Кликните на «Параметры …».
  6. Жмите на «Разрешить все …».

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

Добавьте нужный модуль в книгу

Бывают ситуации, когда макросы включены, но не работают в Excel из-за отключения каким-либо элементом отслеживания событий. В таком случае сделайте следующее:

  1. Перейдите в редактор VBA с помощью клавиш Alt+F11.
  2. Вставьте указанный ниже код.

Sub Reset_Events()

Application.EnableEvents = True

End Sub

  1. Для выполнения кода поставьте курсор в любой точке между началом и концом.
  2. Кликните F5.

Проверьте операционную систему

В ситуации, когда не отображаются макросы в Excel, обратите внимание на тип операционной системы. К примеру, Майкрософт Офис, который подходит для Виндовс, на Мак ОС уже работать не будет. Причина в том, что в приложении используются разные библиотеки. Даже если надстройки и функционируют, могут быть сбои в работе. Вот почему при появлении проблем нужно проверить ОС на соответствие.

Обратите внимание на разработчика

Если в Экселе не работают макросы, причиной может быть другой разработчик. Так, пользователи Excel часто применяют OpenOffice или LibreOffice. Эти пакеты созданы на разных языках программирования, которые имеют индивидуальные особенности. Так, если надстройки написаны на Visual Basic for Application, он может не работать в указанных выше офисных приложениях. Вот почему необходимо уточнять, для какого пакета создан макрос / надстройка.

Проверьте версию Майкрософт Офис

В Макрософт Офис 2003 применяются надстройки xla для Excel. В современных версиях расширение поменялось на xlam. Если ставить макросы старого типа в приложения Офис 2007 и больше, никаких трудностей не происходит. Если же вы попытаетесь поставить новую надстройку на старую версию Excel, она зачастую не работает. Вот почему важно обратить внимание на этот параметр при выборе.

Убедитесь в наличии пакета VBA

Одной из причин, почему не запускается макрос в Excel, может быть отсутствие пакета VBA. Для успешного запуска надстройки необходимо, чтобы этот пакет был установлен. Иногда он уже установлен в Офис, но так происходит не всегда. Для проверки жмите комбинацию на Alt+F11. Если после этого появляется Visual Basic, компонент можно считать установленным. В ином случае его нужно поставить. Для этого:

  • Зайдите в «Пуск», а далее «Панель управления / Программы и компоненты».

  • Выберите программу Майкрософт Офис.
  • Жмите на кнопку «Изменить».

  • Запустить файл установки Setup.exe.
  • Кликните на «Добавить или удалить компоненты».
  • Выберите в списке Visual Basic и установите его.

Активируйте Офис

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

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

Учтите, что документ, полученный с другого ПК / ноутбука, может заблокироваться. Для разблокировки файла нужно нажать ПКМ и в разделе «Общие» кликнуть на «Разблокировать».

 Проверьте библиотеки

В случае, когда параметры макросов не активны в Excel, причиной может быть появление ошибки «Can’t find project or library». При этом, надстройка работает на другом ПК / ноутбуке, а здесь возникают проблемы. Ошибку легко устранить, если в окне, которое идет за сообщением об ошибке, снять отметки в полях Missing. Для вызова окна можно выбрать пункт меню Tools / References.

Проверьте настройки безопасности

В ситуации, когда не работают макросы в Excel, можно добавить надежные расположения или настроить доступ к объектной модели VBA. Для этого в Офис 2007 необходимо сделать следующее:

  1. Войдите в Меню
  2. Кликните на пункт «Параметры».
  3. Жмите на «Центр управления безопасностью».
  4. Войдите в «Параметры центра управления безопасностью».
  5. Кликните на «Параметры макросов» и «Доверять доступ к объектной модели проектов».

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

В комментариях расскажите, какой из приведенных выше вариантов вам помог, и что еще можно сделать.

Отличного Вам дня!

Microsoft добавила дополнительные функции безопасности в Microsoft Excel для Windows в 2022 году, чтобы защитить пользователей от вредоносных макросов Excel. Microsoft пришлось принять меры для защиты клиентов после резкого увеличения числа попыток хакеров использовать макросы.

Microsoft заблокировала запуск макросов, поскольку источник ненадеженMicrosoft заблокировала запуск макросов из-за ненадежной ошибки источника

Эта модификация Microsoft предотвратила работу макросов с файлами, загруженными из Интернета. Однако, поскольку макросы являются отличным способом автоматизации Excel и упрощения работы с листом Excel, невозможность использования реальных макросов может сделать работу некоторых пользователей более трудоемкой и снизить их производительность.

Что такое макросы VBA:

Макросы VBA — это сегменты пользовательского кода, которые функционируют внутри программ MS Office. В определенных обстоятельствах они превращают MS Excel из плоской электронной таблицы в полностью функциональный интерфейс приложения с графическим интерфейсом, помогая включить настраиваемую автоматизацию в файлах. Использование возможностей VBA в индивидуальных клиентских проектах составляет большую часть работы, которую выполняют различные отделы развития бизнеса. содействие быстрой разработке автоматизации и приложений в рамках продуктов MS Office, которые уже используют наши клиенты.

Отличить действительный код VBA от вредоносного может быть чрезвычайно сложно. В результате все пользователи Excel пострадали от безопасности, реализованной Microsoft.

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

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

1. Разблокируйте файл из свойств файла.

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

  1. Закройте рабочую книгу.
  2. Щелкните правой кнопкой мыши файл рабочей книги и нажмите кнопку «Свойства».Щелкните правой кнопкой мыши файл рабочей книги.Щелкните правой кнопкой мыши файл рабочей книги.
  3. Убедитесь, что флажок «Разблокировать» в разделе «Безопасность» установлен на вкладке «Общие», затем нажмите «Применить» и «ОК».Флажок «Разблокировать» в «Безопасности» установлен на вкладке «Общие».Флажок «Разблокировать» в «Безопасности» установлен на вкладке «Общие».
  4. Теперь снова откройте рабочую книгу.
  5. Теперь попробуйте снова запустить макросы и проверьте, не сталкиваетесь ли вы снова с той же ошибкой.запуск макросов запуск макросов

2. Добавьте надежные местоположения.

Microsoft Excel позволяет вам добавлять надежные места в свой каталог, чтобы вам не приходилось разблокировать файлы снова и снова. Вы можете просто загрузить файлы в места, которые вы добавляете в доверенный раздел, которые будут автоматически распознаны Excel как безопасные файлы, и он автоматически разблокирует их.

  1. Нажмите кнопку «Файл» в строке меню.
    Нажмите кнопку «Файл» в строке меню.Нажмите кнопку «Файл» в строке меню.
  2. Теперь нажмите кнопку «Параметры».
    нажмите кнопку нажмите кнопку «Опции»
  3. Перейдите в Центр управления безопасностью > Настройки центра управления безопасностью > Надежные расположения.
  4. В разделе «Надежные местоположения» нажмите «Добавить новое местоположение».
    В надежных местах нажмите «Добавить новое местоположение».В надежных местах нажмите «Добавить новое местоположение».
  5. Нажмите Обзор.
    Нажмите ОбзорНажмите Обзор
  6. Выберите любую папку, которую вы хотите назначить надежным расположением. При открытии файла Excel из выбранной папки вы больше не увидите сообщение об ошибке, если загружаете или импортируете файлы из надежного расположения.
  7. Убедитесь, что опция «Подпапки этого расположения также являются доверенными» отмечена, чтобы вы могли запускать макросы в любое время, когда создаете подпапку внутри этой папки.опция "Подпапки этого расположения также являются доверенными." провереноопция «Подпапки этого расположения также являются доверенными» отмечена
  8. Повторно откройте файл после его перемещения в выбранную папку. Теперь это должно позволить вам запускать макросы для любого файла Excel, который присутствует в папке Trusted.

3. Удалите и переустановите Microsoft Excel.

Если для более ранних исправлений требуется более новая версия этой программы или целостность файлов программы была нарушена, переустановка Microsoft Excel может устранить проблему. С этим патчем вы можете быть уверены, что ваша копия Microsoft Excel является самой последней.

Чтобы удалить Microsoft Excel, вам необходимо выполнить следующие действия:

  1. Нажмите клавишу Windows + R на клавиатуре, чтобы открыть диалоговое окно «Выполнить».открыть диалоговое окно «Выполнить»открыть диалоговое окно «Выполнить»
  2. Введите «appwiz.cpl» и нажмите Enter, чтобы открыть окно «Программы и компоненты».Тип "appwiz.cpl"Введите «appwiz.cpl»
  3. Прокрутите список установленных программ и найдите Microsoft Excel.
  4. Щелкните Microsoft Excel, а затем нажмите кнопку «Удалить».Щелкните Microsoft Excel, а затем щелкните значок "Удалить" кнопкаЩелкните Microsoft Excel, а затем нажмите кнопку «Удалить».
  5. Следуйте инструкциям по удалению Microsoft Excel.

Чтобы переустановить Microsoft Excel, вам необходимо выполнить следующие действия:

  1. Перейдите на сайт Microsoft и войдите в свою учетную запись.
  2. Перейдите на вкладку «Офис», а затем нажмите кнопку «Установить». Запросы на установку Microsoft Excel на ваш компьютер будут различаться в зависимости от конкретной операционной системы и версии Microsoft Excel. Однако общий процесс должен быть похож на следующий:
  3. После нажатия на кнопку «Установить» на сайте Microsoft вам будет предложено выбрать версию Office, которую вы хотите установить. Выберите тот, который вы предпочитаете, а затем нажмите «Установить».нажмите на "Установить"нажмите «Установить»
  4. Вам может быть предложено выбрать между установкой 32-разрядной или 64-разрядной версии Office. Если вы не уверены, какую версию выбрать, вы можете выбрать вариант по умолчанию, который обычно представляет собой 32-разрядную версию.версии офиса майкрософт версии офиса майкрософт
  5. Вас могут попросить принять лицензионное соглашение Microsoft Office. Прочтите соглашение и нажмите «Принять», если вы согласны с условиями.нажмите "Принимать"нажмите «Принять»
  6. Вам будет предложено выбрать, куда вы хотите установить Office. Вы можете принять местоположение по умолчанию или выбрать другое местоположение.
  7. Начнется процесс установки, и вы можете увидеть индикатор выполнения или другие индикаторы, показывающие ход выполнения.Процесс установкиПроцесс установки
  8. После завершения установки вам будет предложено открыть приложение Office, например Excel, для завершения процесса активации.
  9. Если marcos по-прежнему не работает, повторите вышеуказанные исправления для этой более новой установки, и, возможно, это решит вашу проблему с ошибкой макросов.

Надеемся, что эти исправления решили вашу проблему с ошибкой, связанной с неработающими макросами.

Не так давно очередной раз столкнулся с ошибками приложения Excel при попытке включения макросов после открытия файлов .xlsm. Вспомнил, что подобные проблемы преследуют пользователей довольно давно, но чаще всего они наблюдались с Excel 2013 и Excel 2016. Характерные особенности этой группы ошибок следующие:

  • Приложение Excel закрывается при открытии файла с макросами (при включенном режиме безопасности Включить все макросы);
  • Ошибка приложения Excel возникает при попытке включить содержимое (нажатии соответствующей кнопки);
  • Ошибка приложения Excel возникает при сохранении файла с макросами;

Ну и по горячим следам очередного инцидента, дабы не откладывать на потом, решил для себя собрать небольшой хаб по ошибкам приложения Excel с последующей модификацией, дабы опять не терять время на поиск информации в Сети и на составление облака причин.
Суть в том, что в процессе открытия файла xlsm, и при отключенных макросах, в верхней части основного окна (над таблицей), высвечивается строка уведомления: ПРЕДУПРЕЖДЕНИЕ СИСТЕМЫ БЕЗОПАСНОСТИ Запуск макросов отключен, с кнопкой включения содержимого (макросов). Как только пользователь её нажимает, Excel попросту аварийно завершается (падает) с ошибкой Программа Microsoft Excel не работает и характерным окном уведомления:

excel ошибка макроса

При этом было замечено, что непосредственно перед возникновением ошибки приложения Excel никаких системных обновлений и обновлений пакета Office не устанавливалось. Возможно, каким-то образом задействованы последние обновления на Office, но прямой связи я не заметил, а подробного исследования проблемы не проводил. При этом зависимости от версии операционной системы (мною лично сбои наблюдались на Windows 10 LTSC и Windows 7 Professional) так же выявлено не было. При анализе аварийного дампа приложения (*.hdmp) обычно можно увидеть подобную информацию исключения (вывод урезан):

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

. . .

EXCEPTION_RECORD:  (.exr 1)

ExceptionAddress: 00007ff86a1e05ac (VBE7+0x00000000001405ac)

   ExceptionCode: c0000005 (Access violation)

  ExceptionFlags: 00000000

NumberParameters: 2

   Parameter[0]: 0000000000000001

   Parameter[1]: 0000000000000010

Attempt to write to address 0000000000000010

DEFAULT_BUCKET_ID:  NULL_CLASS_PTR_WRITE

PROCESS_NAME:  EXCEL.EXE

ERROR_CODE: (NTSTATUS) 0xc0000005 <Unable to get error code text>

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 <Unable to get error code text>

EXCEPTION_CODE_STR:  c0000005

EXCEPTION_PARAMETER1:  0000000000000001

EXCEPTION_PARAMETER2:  0000000000000010

WRITE_ADDRESS:  0000000000000010

. . .

обычно это NTSTATUS с кодом c0000005 — Access violation, доступ запрещен. И чаще всего в дампе можно увидеть такой вот стек потока (вывод оптимизирован для улучшения представления):

. . .

STACK_TEXT:  

000000b9`1acfdd00 000001d3`2fb24e90 : 000001d3`5a0e0ef0 00000000`00000000 : VBE7+0x1405ac

000000b9`1acfdd08 000001d3`24c1fe20 : 00000000`00000000 000001d3`2fda9640 : 0x000001d3`2fb24e90

000000b9`1acfdd10 000001d3`6cf35760 : 000001d3`2fda9640 000001d3`045c9b30 : 0x000001d3`24c1fe20

000000b9`1acfdd18 000001d3`5a0e0ef0 : 000001d3`045c9b30 000001d3`2fcbb2b0 : 0x000001d3`6cf35760

000000b9`1acfdd20 00000000`00000000 : 000001d3`2fcbb2b0 000001d3`2fcbb318 : 0x000001d3`5a0e0ef0

. . .

из которого единственное что понятно, так это то, что падение Excel происходит в недрах функций библиотеки vbe7.dll (среда исполнения VBA), подгруженной в адресное пространство процесса. Это указывает на проблемы с обработчиком VBA-скриптов, в контексте Excel чаще именуемых макросами.

НЕРЕШЕННОЕ: при отладке приложений из комплекта MS Office, вы не увидите имен функций в стеке вызовов, поскольку отсутствуют отладочные символы как к основным исполняемым файлам (Excel/Word/Outlook), так и к многочисленным библиотекам. Интересно, есть ли какое-либо решение?

VBA

Так что же такое VBA и для чего он предназначается?

VBA (Visual Basic for Application) — язык макропрограммирования, основанный на языке Visual Basic.

В приложениях, входящих в комплект MS Office, таких как Excel, Word, PowerPoint и Access, VBA используется для автоматизации множества рутинных задач (напр.: повторяющихся однотипных действий), позволяет создавать формы для общения с пользователем и предлагает множество иного богатого функционала. При помощи VBA доступно управление электронной таблицей посредством объектно-ориентированной модели кода/данных, при помощи VBA-кода входные данные таблиц могут быть обработаны и представлены в итоговых (результирующих) таблицах и диаграммах (графиках). Таблица становится интерфейсом кода, позволяя легко работать, изменять его и управлять расчётами. На выходе VBA проект, используемый в структурах описанных выше приложений (электронные таблицы Excel, презентации PowerPoint, базы Access), компилируется в специальный бинарный исполняемый файл, который размещается внутри файла основного формата. Применительно к Excel это файл vbaProject.bin, который располагается внутри *.xslm-файла в директории /xl, представляющий собой бинарный исполняемый файл проекта, содержащий макрос в откомпилированном (готовом к исполнению) виде.

Наиболее вероятной причиной сбоя является повреждение блока кода VBA, содержащегося в книге Excel. Об истоках этого остается только догадываться, возможно что в структуре .xlsm-файла, в процессе работы с документом, происходят какие-то [непредвиденные разработчиками] изменения, способные приводить блок кода в неработоспособное состояние.

Решение 1: вставка нового листа

Выполните приведенную последовательность действий:

  1. Открываем [проблемный] .xlsm-файл (файл с макросами).
  2. Не нажимаем кнопку Включить содержимое.
  3. Добавляем в книгу Excel новый лист: правая кнопка мыши на ярлыках Лист1/Лист2/Лист3 → ВставитьЛист.
  4. Сохраняем электронную таблицу. Закрываем Excel.
  5. Открываем проблемный файл заново и включаем макросы.

Решение 2: перекомпиляция проекта

Выполните последовательность действий:

  1. Запускаем и открываем новую книгу Excel (не ваш проблемный файл).
  2. Открываем меню Файл — выбираем Параметры — далее открываем Центр управления безопасностью и заходим в Параметры центра управления безопасностью.
  3. В разделе Параметры макросов — выставляем чекбокс Отключить все макросы с уведомлением.
  4. В разделе Надежные расположения — выставляем чекбокс Отключить все надежные расположения.
  5. В разделе Надежные документы — выставляем чекбокс Отключить надежные документы.
  6. Жмем везде OK. Закрываем Excel.

  7. Открываем [проблемный] .xlsm-файл (файл с макросами).
  8. Не нажимаем кнопку Включить содержимое.
  9. Открывает редактор Visual Basic при помощи комбинации клавиш Alt+F11. Либо можно использовать обходной маневр: в настройках включаем меню Разработчик, после этого в появившемся сверху в ленте меню Разработчик выбираем пункт Visual Basic.
  10. В открывшемся окне редактора Visual Basic (VBA редактор) пересохраняем проект: для этого жмем на панели инструментов кнопку Сохранить (изображение дискетки или комбинация Ctrl+S).
  11. Выбираем из меню Debug — выбираем пункт меню Compile VBA Project:

    recompile vba project

  12. Еще раз сохраняем проект кнопкой Сохранить.
  13. Закрываем редактор Visual Basic.

  14. Сохраняем файл Excel через меню Файл — опцию Сохранить (или нажатием на значок дискетки в левом верхнем углу, либо комбинация клавиш Ctrl+S).
  15. Возвращаем все установки безопасности, сделанные на предыдущих шагах (пункты 2-5).
  16. Закрываем xlsm-файл.
  17. Заново открываем [проблемный] файл, в верхней части, в строке статуса — включаем макросы посредством кнопки Включить содержимое.

Решение 3: добавление модуля

Дополнительное решение состоит в том, что бы внести изменения в макрос без перекомпиляции.

  1. Открываем [проблемный] .xlsm-файл (файл с макросами).
  2. Не нажимаем кнопку Включить содержимое.
  3. Открывает редактор Visual Basic (при помощи комбинации клавиш Alt+F11).
  4. Открываем меню Tools → пункт Options. В открывшемся окне переходим на вкладку General и деактивируем чекбокс Compile on Demand:

    compile on demand

    Закрываем окно Опции нажатием клавиши OK.

  5. В левом фрейме окна проекта (Project) спускаемся вниз, находим раздел Modules, жмем на нём правую кнопку → пункт InsertModule:

    vba insert module

  6. Далее просто закрываем окно редактора Visual Basic, сохраняем основной xslm-документ и закрываем Excel.
  7. Заново открываем [проблемный] файл, в верхней части, в строке статуса — включаем макросы посредством кнопки Включить содержимое.

Содержание

  • Включение и отключение макросов через меню разработчика
  • Включение и отключение макросов через параметры программы
  • Включение и отключение макросов в других версиях Excel
  • Вопросы и ответы

Макросы в Microsoft Excel

Макросы – это инструмент для создания команд в приложении Microsoft Excel, которые позволяют значительно сократить время на выполнение задач, автоматизировав процесс. Но, в то же время, макросы являются источником уязвимости, которой могут воспользоваться злоумышленники. Поэтому, пользователь на свой страх и риск должен решить применять данную возможность в конкретном случае, или нет. Например, если он не уверен в благонадежности открываемого файла, то лучше макросами не пользоваться, ведь они могут послужить причиной заражения компьютера вредоносным кодом. Учитывая это, разработчики предоставили возможность пользователю самому решать вопрос включения и отключения макросов.

Включение и отключение макросов через меню разработчика

Основное внимание мы уделим процедуре включения и отключения макросов в самой популярной и распространённой на сегодня версии программы — Excel 2010. Потом, более бегло поговорим о том, как это сделать в других версиях приложения.

Включить или отключить макросы в Microsoft Excel можно через меню разработчика. Но, проблема состоит в том, что по умолчанию данное меню отключено. Чтобы его включить, переходим во вкладку «Файл». Далее, кликаем по пункту «Параметры».

Переход в параметры Microsoft Excel

В открывшемся окне параметров, переходим в раздел «Настройка ленты». В правой части окна данного раздела устанавливаем галочку около пункта «Разработчик». Жмем на кнопку «OK».

Включение режима разработчика в Microsoft Excel

После этого, на ленте появляется вкладка «Разработчик».

Переходим во вкладку «Разработчик». В самой правой части ленты расположен блок настроек «Макросы». Чтобы включить или отключить макросы, кликаем по кнопке «Безопасность макросов».

Переход в раздел безопасности макросов в Microsoft Excel

Открывается окно центра управления безопасностью в разделе «Макросы». Для того, чтобы включить макросы, переставляем переключатель в позицию «Включить все макросы». Правда, данное действие разработчик не рекомендует выполнять в целях безопасности. Так что, всё выполняется на свой страх и риск. Жмем на кнопку «OK», которая расположена в нижнем правом углу окна.

Включение макросов в Microsoft Excel

Отключаются макросы тоже в этом же окне. Но, существует три варианта отключения, один из которых пользователь должен выбрать в соответствии с ожидаемым уровнем риска:

  1. Отключить все макросы без уведомления;
  2. Отключить все макросы с уведомлением;
  3. Отключить все макросы, кроме макросов с цифровой подписью.

В последнем случае, макросы, у которых будет иметься цифровая подпись, смогут выполнять задачи. Не забываем жать на кнопку «OK».

Отключение макросов в Microsoft Excel

Lumpics.ru

Включение и отключение макросов через параметры программы

Существует ещё один способ включения и отключения макросов. Прежде всего, переходим в раздел «Файл», и там жмем на кнопку «Параметры», как и в случае включения меню разработчика, о чем мы говорили выше. Но, в открывшемся окне параметров, переходим не в пункт «Настройка ленты», а в пункт «Центр управления безопасностью». Кликаем по кнопке «Параметры центра управления безопасностью».

Переход в параметры центра управлением безопасностью в Microsoft Excel

Открывается то же самое окно Центра управления безопасностью, в которое мы переходили через меню разработчика. Переходим в раздел «Параметры макросов», и там включаем или отключаем макросы тем же способом, как делали это в прошлый раз.

Параметры макросов в Microsoft Excel

В других версиях программы Excel процедура отключения макросов несколько отличается от указанного выше алгоритма.

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

Для того, чтобы включить или отключить макросы в программе Excel 2007, нужно сразу кликнуть по логотипу Microsoft Office в верхнем левом углу окна, а затем в нижней части открывшейся страницы нажать на кнопку «Параметры». Далее, открывается окно Центра управления безопасностью, и дальнейшие действия по включению и отключению макросов практически ничем не отличаются от описанных для Excel 2010.

В версии Excel 2007 достаточно просто последовательно перейти по пунктам меню «Сервис», «Макрос» и «Безопасность». После этого, откроется окно, в котором нужно выбрать один из уровней безопасность работы макросов: «Очень высокая», «Высокая», «Средняя» и «Низкая». Эти параметры соответствуют пунктам параметров макросов более поздних версий.

Как видим, включить макросы в последних версиях программы Excel несколько сложнее, чем это было в предыдущих версиях приложения. Это связано с политикой разработчика на увеличение уровня безопасности пользователя. Таким образом, макросы может включить только более или менее «продвинутый» пользователь, который способен объективно оценить риски от выполняемых действий.

Excel для Microsoft 365 Word для Microsoft 365 Outlook для Microsoft 365 PowerPoint для Microsoft 365 Access для Microsoft 365 Excel 2021 Word 2021 Outlook 2021 PowerPoint 2021 Access 2021 Visio профессиональный 2021 Visio стандартный 2021 Excel 2019 Word 2019 Outlook 2019 PowerPoint 2019 Access 2019 Visio профессиональный 2019 Visio стандартный 2019 Excel 2016 Word 2016 Outlook 2016 PowerPoint 2016 Access 2016 Visio профессиональный 2016 Visio стандартный 2016 Excel 2013 Word 2013 Outlook 2013 PowerPoint 2013 Access 2013 Visio профессиональный 2013 Visio 2013 Excel 2010 Word 2010 Outlook 2010 PowerPoint 2010 Access 2010 Visio премиум 2010 Visio 2010 Visio стандартный 2010 Excel Starter 2010 Еще…Меньше

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

Однако некоторые макросы могут представлять угрозу безопасности. Макросы часто используются злоумышленниками для тихой установки вредоносных программ, таких как вирус, на компьютере или в сети организации.

Предупреждение: Никогда не включайте макросы в файле Microsoft 365, если вы не знаете, что делают эти макросы. Непредвиденные макросы могут представлять значительную угрозу безопасности. Для просмотра или изменения файла не нужно включать макросы; только в том случае, если вам нужны функциональные возможности, предоставляемые макросом. Дополнительные сведения см. в статье Защита от макровирусов.

Изменение параметров макросов в центре управления безопасностью

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

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

  1. Откройте вкладку Файл.

  2. Нажмите кнопку Параметры.

  3. Затем выберите пункты Центр управления безопасностью и Параметры центра управления безопасностью.

  4. В центре управления безопасностью щелкните элемент Параметры макросов.

    Область "Параметры макроса" центра управления безопасностью

  5. Выберите нужный вариант, а затем нажмите кнопку ОК.

Примечание: Варианты немного отличаются в Excel, мы будем называть их, как мы идем.

  • Отключить все макросы без уведомления.     Этот параметр отключает макросы и связанные с ними оповещения безопасности.

    В Excel этот параметр — Отключить макросы VBA без уведомления и применяется только к макросам VBA.

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

    В Excel этот параметр — Отключить макросы VBA с уведомлением , и он применяется только к макросам VBA.

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

    В Excel этот параметр — Отключить макросы VBA, кроме макросов с цифровой подписью , и он применяется только к макросам VBA.

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

    В Excel этот параметр — Включить макросы VBA (не рекомендуется, может выполняться потенциально опасный код) и применяется только к макросам VBA.

  • Excel также установлен флажок Включить макросыExcel 4.0 при включении макросов VBA. Если установить этот флажок, все приведенные выше параметры для макросов VBA также будут применяться к макросам Excel 4.0 (XLM).

    Если этот флажок не установлен, макросы XLM отключены без уведомления.

  • Доверять доступ к объектной модели проектов VBA     Запретить или разрешить программный доступ к объектной модели Visual Basic для приложений (VBA) из клиента автоматизации. Этот параметр безопасности предназначен для кода, написанного для автоматизации программы Microsoft 365 и управления средой VBA и объектной моделью. Это параметр для отдельных пользователей и приложений, который по умолчанию запрещает доступ, препятствуя созданию несанкционированных программ вредоносных самореплицируемых кодов. Чтобы клиенты автоматизации получили доступ к объектной модели VBA, пользователь, выполняя код, должен предоставить доступ. Чтобы включить доступ, выберите поле проверка.

    Примечание: В Microsoft Publisher и Microsoft Access параметр Доверять доступ к объектной модели проектов VBA отсутствует.

Сведения о создании макросов см. в статье Краткое руководство. Создание макроса.

Сведения об использовании макросов на компьютере под управлением Windows S см. в статье Блокировка подозрительных макросов в Office на Windows 10 S.

См. также

Изменение параметров безопасности макросов в Excel

Как вредоносная программа может заразить компьютер

Нужна дополнительная помощь?

Понравилась статья? Поделить с друзьями:
  • Excel сводная таблица разница полей
  • Excel сам окрашивает ячейку
  • Excel сводная таблица одинаковые строки
  • Excel сам набирает текст
  • Excel сводная таблица ограничения