Ошибка отключены макросы

Не работают макросы в 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, вы можете с легкостью исправить проблему и восстановить работоспособность. Если же сложности в работе возникают, вы всегда можете воспользоваться инструкцией в статье.

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

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

  • Remove From My Forums

 none

сообщение «Макрос не найден. Возможно, он отключен по соображениям безопасности»

  • Вопрос

  • Здравствуйте! Такая проблема: при пользовании MSWord 2010 в тестовом режиме при открытии файла появляется сообщение»Макрос не найден. Возможно, он отключен по соображениям безопасности». Перепробовал все способы, указанные в справке, ничего не помогает.
    Оч. раздражает. Заранее спасибо за ответ.

Ответы

  • У меня была та же проблема.

    Отключение всех макросов с уведомлениями или наоборот полное включение ничего не меняла…

    Народ, делать копи-паст из справки и давать таким образом советы умеет любой дурак.

    Проблема сидит в дополнениях от лингвы, промта и некоторых других, которые остаются от старых офисов.

    Пробей поиском по диску C на файлы с типом *.dotm и удали лишнее.

    У меня был один от Lingvo X3, лежал тут: C:Users[Имя Пользователя]AppDataRoamingMicrosoftWord (Это для семерки, в хр папка с пользовательскими настройками соответственная)

    • Предложено в качестве ответа

      19 мая 2010 г. 18:07

    • Помечено в качестве ответа
      Vinokurov YuriyModerator
      28 июня 2010 г. 6:22

I am trying to call a sub on a different worksheet but I got a run time error message.

Specifically, I have two worksheets and multiple VBA sub s in those worksheets. In one of the VBA Project (say workbook1.xlsm), I have the following code:

Sub AnalysisTableMacro()
Workbooks("Python solution macro.xlsm").Activate
Application.Run "Python solution macro.xlsm!.PreparetheTables"
End Sub

But I got the following error. The macros on both worksheets are enabled. In both worksheets, the subs are in Module1.

Cannot run the macro ‘Workbook.xlsm!PrepareTheTables’. The macro may not be available in >this workbook or all macros may be disabled.

I also tried Application.Run "Python solution macro.xlsm!Module1.PreparetheTables" but did not work.

TylerH's user avatar

TylerH

20.7k65 gold badges73 silver badges98 bronze badges

asked Aug 22, 2013 at 19:47

Ege Ozlem's user avatar

0

If you have a space in the name of the workbook you must use single quotes (‘) around the file name. I have also removed the full stop.

Application.Run "'Python solution macro.xlsm'!PreparetheTables"

answered Mar 7, 2016 at 15:55

ChipsLetten's user avatar

ChipsLettenChipsLetten

2,9131 gold badge11 silver badges28 bronze badges

0

In my case this error came up when the Sub name was identical to the Module name.

answered May 25, 2019 at 19:11

Mor Sagmon's user avatar

Mor SagmonMor Sagmon

8751 gold badge15 silver badges33 bronze badges

2

Had the same issue and I ‘Compiled VBA Project’ which identified an error. After correction and compiling, the macros worked.

answered Sep 4, 2016 at 3:53

Vignesh's user avatar

VigneshVignesh

1672 silver badges12 bronze badges

You also run into this issue when you are creating routine in a class module.

When you try to run the code externally, you get this error.
You can’t assign macro to button to a member of a class module either.

If you try to run from within the code by pressing green play button you will also see the same error.

Either move the routine in to a regular module or create a new routine in a regular module that calls the class member.

HackSlash's user avatar

HackSlash

4,7822 gold badges17 silver badges42 bronze badges

answered May 11, 2018 at 13:39

Heap of Pinto Beans's user avatar

0

Per Microsoft’s KB, try allowing programmatic access to the Visual Basic project:

  1. Click the Microsoft Office Button, and then click Excel Options.
  2. Click Trust Center.
  3. Click Trust Center Settings.
  4. Click Macro Settings.
  5. Click to select the Trust access to the VBA project object model check box.
  6. Click OK to close the Excel Options dialog box.
  7. You may need to close and re-open excel.

Jess's user avatar

Jess

23.6k20 gold badges123 silver badges145 bronze badges

answered Jan 17, 2014 at 0:42

Ved Rai's user avatar

Ved RaiVed Rai

1191 silver badge3 bronze badges

2

In my case the error happened when I placed my macro (public sub) into a ThisWorkbook section of the file expecting it will make it visible for Application.Run function. This was not the case and I got that error you mentioned.

I moved my macro into a separate Module and it resolved the problem.

answered Aug 7, 2019 at 17:55

Peter Liapin's user avatar

Peter LiapinPeter Liapin

1,1869 silver badges19 bronze badges

I had a problem with this error as well, turned out the the filename was causing the problem.

I was calling it like this:
Application.Run "'" & strPath & strFName & "'!UPC.PrintaFew"

The variable strFName contained an apostrophe in it which, of course messed things up. Took me hours to figure it out. But once the apostrophe was removed from the filename it worked.

pgSystemTester's user avatar

answered Sep 1, 2017 at 11:13

JovialJohn's user avatar

JovialJohnJovialJohn

351 silver badge4 bronze badges

Go into task manager and see if you have any Microsoft Excel Processes running in the background. I closed my excel background processes and my code worked again.

answered Jan 7, 2020 at 18:45

Brennan Casey's user avatar

Brennan CaseyBrennan Casey

8872 gold badges7 silver badges17 bronze badges

1

I had to remove all dashes and underscores from file names and macro names, make sure that macro were enabled and add them module name.macro name

This is what I ended up with: Application.Run ("'" & WbName & "'" & "!ModuleName.MacroName")

pgSystemTester's user avatar

answered Aug 3, 2017 at 20:58

Matt R.'s user avatar

Delete your name macro and build again.
I did this, and the macro worked.

Michael Petrotta's user avatar

answered Oct 5, 2013 at 23:50

Dhitta Hananda's user avatar

1

I had the same problem as OP and found was due to the options declaration being misspelled:

' Comment comment  

Options Explicit  

Sub someMacroMakechart()

in a sub module, instead of correct;

' Comment comment  

Option Explicit  

Sub someMacroMakechart()

answered Jan 21, 2016 at 5:04

Doylet's user avatar

This error also occurs if you create a sub or function in a ‘Microsoft Excel Object’ (like Sheet1, Sheet2, …) instead to create it in a Module.

For example:
you create with VBA a button and set .OnAction = 'btn_action' . And Sub btn_action you placed into the Sheet object instead into a Module.

answered Nov 6, 2019 at 18:50

elano7's user avatar

elano7elano7

1,4341 gold badge17 silver badges17 bronze badges

I had the same error message «Cannot find the macro ___ etc» and this problem persisted even after I’d saved the file as an XLSX. This seemed very odd … how could it be running a macro when the file has no macros!

When I examined the file using the Custom UI Editor, I found that a macro was being called when the file was initialized and another custom macro was being called when the user clicked the Save button.

Using the Custom UI Editor, I removed all the XML code and the error messages disappeared.

answered May 20, 2020 at 4:07

Jeff Robson's user avatar

In my case, the macro I wished to run was assigned to a button on a worksheet (Forms button as opposed to ActiveX button).

The macro was defined not in the workbook, but in a separate .xlam addin. Clicking the button gave an error: Cannot run the macro 'NameOfMyMacro'. The macro may not be available in this workbook or all macros may be disabled.

None of the answers given here worked for me, but what did work was to make the folder of the workbook a «Trusted Location».

See Ribbon -> File -> Options -> Trust Center -> Trust Center Settings -> Trusted Locations -> Add new Location

answered Jun 18, 2022 at 10:11

Philip Swannell's user avatar

In my case it was a security issue that I resolved by unblocking the file in explorer (Properties / Unblock).

answered Nov 1, 2022 at 12:34

ernesthm's user avatar

ernesthmernesthm

4214 silver badges15 bronze badges

I got this error when a sub was assigned programically using OnAction property. To make it work you need to provide the exact path for example ‘My Workbook.xlsm’!MyMacroScript

.OnAction = "'" & ThisWorkbook.Name & "'!" & "MyMacroScript"

answered Apr 11 at 11:31

Marcin Janowski's user avatar

answered Apr 17 at 6:51

carusyte's user avatar

carusytecarusyte

1,49917 silver badges21 bronze badges

 

sgeleta

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

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

Получил файл на тест работы макроса.
Пытаюсь открыть его. Но выдает ошибку: Возможно этот макрос отсутствует в текущей книги либо все макросы отключены.
Но макросы включены…
Как быть?

 

Karataev

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

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

После открытия файла, вверху есть желтая панель с кнопкой «Включить содержимое»? С помощью этой кнопки Вы разрешите запуск макросов, которые находятся в этом файле.

 

sgeleta

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

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

В свойствах все макросы включены. Но при этом не работает

 

Karataev

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

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

sgeleta, переназначьте макрос — щелкните по кнопке правой кнопкой мыши — Назначить макрос — выберите макрос. Стало работать?

 

Alemox

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

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

Если вы сидите под урезанным пользователем, то-бишь вы не можете работать в режиме админа (устанавливать или удалять программы так как требует ввести пароль и прочее). и если у вас стоит точка включить все макросы, то это не значит что всегда макросы будут работать. Я так тоже пару раз напоролся, в режиме урезанного пользователя не все макросы запускаются и работают с включенной этой точечкой. Поставьте в режим Отключить все макросы с уведомлением. И потом по жёлтенькой панельке включайте макросы. Только сначала выйдите и зайдите в документ.
Тоже самое касается элементов ActiveX. Вторую снизу ставьте.

Изменено: Alemox19.09.2017 11:01:15

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

sgeleta

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

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

Karataev, Спасибо за идею… Но опять ничего…Заколдованый

 

sgeleta

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

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

Alemox,Все сделал как Вы сказали… И опять ничего.

 

Alemox

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

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

Может ребутнуться? Возможно что-то сглючило.

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

Karataev

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

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

sgeleta, а компьютер Ваш или Вы на работе и у Вас там действительно права регулируются?
Может быть перезагрузить компьютер.

 

sgeleta

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

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

Karataev, Комп домашний. поэтому права не регулируются админом. Комп перегрузил как Вы сказали и ничего…..

 

sgeleta

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

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

Возможно нужно найти бесплатный Excel 2010 и поставить на комп. Тогда возможно проблема решиться

 

vikttur

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

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

Нет таких :)
А если есть — обсуждения на этом форуме запрещены.

 

sgeleta

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

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

поставил Excel 2007 — не работает. Та же ошибка.
У меня же официальный Excel 2016 и не работают макросы…

 

Alemox

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

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

Может у вас какой-нибудь антивируник блокирует, или программа какая есть, которая следит за выполнение различных скриптов. У вас случаем не Линукс через эмулятор?

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

sgeleta

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

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

Alemox,Windows 10
Думаю, что связано с компом.
Ведь поставил Excel 7 — и таже проблема
Возможна блокировка антивирусом?

Изменено: sgeleta19.09.2017 16:35:23

 

vikttur

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

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

Отключите и проверьте. Хотя в случае блокировки антивирусник ругался бы.

 

smaiks

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

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

у вас определенно макросы отключены. Файл — параметры — центр управления безопасностью — параметры центра управления — параметры макросов (включить все макросы) + параметры activeX включите на всякий случай.

 

vikttur

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

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

#18

19.09.2017 17:06:37

smaiks, в заглавном сообщении:

Цитата
sgeleta написал: Но макросы включены…

Да и в сообщениях ниже написано, что некотоорые макросы работают.

 

sgeleta

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

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

всё включено, но не работает

Прикрепленные файлы

  • 11.gif (39.28 КБ)

 

_Igor_61

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

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

Здравствуйте! Днем смотрел этот файл на рабочем компе (Win XP, Excel 2007), при нажатии на кнопку выскакивало MsgBox «Макросы включены» или что-то типа этого сообщения (дословно не помню). Сейчас дома: Win7 Excel 2007 — при открытии файла и последующем включении макросов Excel закрывается («Прекращена работа программы…» и т.д.). Открываю с отключенными макросами, пытаюсь открыть редактор VBA через «Разработчик» — такая же история.

 

sgeleta

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

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

_Igor_61,Я открыл нормально этот файл на старом ноутбуке с Excel 2010
А на компе, где стоит Win 10 и абсолютно легальный Excel 2016 — не работает…

 

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

Всё сложное — не нужно. Всё нужное — просто /М. Т. Калашников/

 

sgeleta

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

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

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

Хорошая идея. Я взял новый файл и по уроку Николая Павлова (

https://www.youtube.com/watch?v=_3OLOaoY6H4

)
попробовал создать макрос.

Все получилось… Теперь вообще не понимаю. в чем дело….

 

Murlif

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

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

Дамы и Господа, добрый день.

Тоже столкнулись с такой проблемой. В 2013 офисе все работает (в нем же написан макрос). На 2010 выдает сообщение «не удается выполнить макрос возможно этот макрос отсутствует». Копание в центре безопасности не помогло. В редакторе VBA на ПК с 2010 офисом часть кодов почему-то отображается «квакозяброй» вместо нормального текста. Может быть проблема с шрифтами?

 

sokol92

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

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

#26

02.02.2021 13:09:23

Выложите проблемный файл.

Владимир

 

sgeleta

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

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

Получил файл на тест работы макроса.
Пытаюсь открыть его. Но выдает ошибку: Возможно этот макрос отсутствует в текущей книги либо все макросы отключены.
Но макросы включены…
Как быть?

 

Karataev

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

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

После открытия файла, вверху есть желтая панель с кнопкой «Включить содержимое»? С помощью этой кнопки Вы разрешите запуск макросов, которые находятся в этом файле.

 

sgeleta

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

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

В свойствах все макросы включены. Но при этом не работает

 

Karataev

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

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

sgeleta, переназначьте макрос — щелкните по кнопке правой кнопкой мыши — Назначить макрос — выберите макрос. Стало работать?

 

Alemox

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

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

Если вы сидите под урезанным пользователем, то-бишь вы не можете работать в режиме админа (устанавливать или удалять программы так как требует ввести пароль и прочее). и если у вас стоит точка включить все макросы, то это не значит что всегда макросы будут работать. Я так тоже пару раз напоролся, в режиме урезанного пользователя не все макросы запускаются и работают с включенной этой точечкой. Поставьте в режим Отключить все макросы с уведомлением. И потом по жёлтенькой панельке включайте макросы. Только сначала выйдите и зайдите в документ.
Тоже самое касается элементов ActiveX. Вторую снизу ставьте.

Изменено: Alemox19.09.2017 11:01:15

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

sgeleta

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

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

Karataev, Спасибо за идею… Но опять ничего…Заколдованый

 

sgeleta

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

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

Alemox,Все сделал как Вы сказали… И опять ничего.

 

Alemox

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

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

Может ребутнуться? Возможно что-то сглючило.

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

Karataev

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

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

sgeleta, а компьютер Ваш или Вы на работе и у Вас там действительно права регулируются?
Может быть перезагрузить компьютер.

 

sgeleta

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

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

Karataev, Комп домашний. поэтому права не регулируются админом. Комп перегрузил как Вы сказали и ничего…..

 

sgeleta

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

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

Возможно нужно найти бесплатный Excel 2010 и поставить на комп. Тогда возможно проблема решиться

 

vikttur

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

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

Нет таких :)
А если есть — обсуждения на этом форуме запрещены.

 

sgeleta

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

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

поставил Excel 2007 — не работает. Та же ошибка.
У меня же официальный Excel 2016 и не работают макросы…

 

Alemox

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

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

Может у вас какой-нибудь антивируник блокирует, или программа какая есть, которая следит за выполнение различных скриптов. У вас случаем не Линукс через эмулятор?

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

sgeleta

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

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

Alemox,Windows 10
Думаю, что связано с компом.
Ведь поставил Excel 7 — и таже проблема
Возможна блокировка антивирусом?

Изменено: sgeleta19.09.2017 16:35:23

 

vikttur

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

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

Отключите и проверьте. Хотя в случае блокировки антивирусник ругался бы.

 

smaiks

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

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

у вас определенно макросы отключены. Файл — параметры — центр управления безопасностью — параметры центра управления — параметры макросов (включить все макросы) + параметры activeX включите на всякий случай.

 

vikttur

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

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

#18

19.09.2017 17:06:37

smaiks, в заглавном сообщении:

Цитата
sgeleta написал: Но макросы включены…

Да и в сообщениях ниже написано, что некотоорые макросы работают.

 

sgeleta

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

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

всё включено, но не работает

Прикрепленные файлы

  • 11.gif (39.28 КБ)
 

_Igor_61

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

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

Здравствуйте! Днем смотрел этот файл на рабочем компе (Win XP, Excel 2007), при нажатии на кнопку выскакивало MsgBox «Макросы включены» или что-то типа этого сообщения (дословно не помню). Сейчас дома: Win7 Excel 2007 — при открытии файла и последующем включении макросов Excel закрывается («Прекращена работа программы…» и т.д.). Открываю с отключенными макросами, пытаюсь открыть редактор VBA через «Разработчик» — такая же история.

 

sgeleta

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

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

_Igor_61,Я открыл нормально этот файл на старом ноутбуке с Excel 2010
А на компе, где стоит Win 10 и абсолютно легальный Excel 2016 — не работает…

 

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

Всё сложное — не нужно. Всё нужное — просто /М. Т. Калашников/

 

sgeleta

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

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

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

Хорошая идея. Я взял новый файл и по уроку Николая Павлова (

)
попробовал создать макрос.

Все получилось… Теперь вообще не понимаю. в чем дело….

 

Murlif

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

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

Дамы и Господа, добрый день.

Тоже столкнулись с такой проблемой. В 2013 офисе все работает (в нем же написан макрос). На 2010 выдает сообщение «не удается выполнить макрос возможно этот макрос отсутствует». Копание в центре безопасности не помогло. В редакторе VBA на ПК с 2010 офисом часть кодов почему-то отображается «квакозяброй» вместо нормального текста. Может быть проблема с шрифтами?

 

sokol92

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

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

#26

02.02.2021 13:09:23

Выложите проблемный файл.

Владимир

Не работают макросы в 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, вы можете с легкостью исправить проблему и восстановить работоспособность. Если же сложности в работе возникают, вы всегда можете воспользоваться инструкцией в статье.

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

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

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

В частности, у меня есть две таблицы и несколько сабвуферов VBA в этих таблицах. В одном из проектов VBA (скажем, workbook1.xlsm) у меня есть следующий код:

Sub AnalysisTableMacro()
Workbooks("Python solution macro.xlsm").Activate
Application.Run "Python solution macro.xlsm!.PreparetheTables"
End Sub

Но я получил следующую ошибку. Макросы на обоих листах включены. В обеих таблицах сабвуферы находятся в Модуле1.

Не удается запустить макрос «Workbook.xlsm! PrepareTheTables». Макрос может быть недоступен в> этой книге или все макросы могут быть отключены.

Я также попробовал Application.Run "Python solution macro.xlsm!Module1.PreparetheTables" но не сработало.

Ответ 1

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

Application.Run "'Python solution macro.xlsm'!PreparetheTables"

Ответ 2

В Microsoft KB попробуйте разрешить программный доступ к проекту Visual Basic:

  1. Нажмите кнопку Microsoft Office, а затем нажмите Параметры Excel.
  2. Нажмите Траст-центр.
  3. Нажмите Настройки центра управления безопасностью.
  4. Нажмите Настройки макроса.
  5. Нажмите, чтобы установить флажок Доверительный доступ к объектной модели проекта VBA.
  6. Нажмите кнопку ОК, чтобы закрыть диалоговое окно «Параметры Excel».
  7. Возможно, вам придется закрыть и снова открыть Excel.

Ответ 3

Имел ту же проблему, и я «Скомпилировал проект VBA», который выявил ошибку. После коррекции и компиляции макросы работали.

Ответ 4

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

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

Если вы попытаетесь запустить из кода, нажав зеленую кнопку воспроизведения, вы также увидите ту же ошибку.

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

Ответ 5

У меня также была проблема с этой ошибкой, оказалось, что имя файла вызывает проблему.

Я называл это следующим образом:
Application.Run «и strPath и strFName и»!! UPC.PrintaFew «

Переменная strFName содержала в себе апостроф, который, конечно же, перепутал вещи. Мне потребовалось несколько часов, чтобы понять это. Но как только апостроф был удален из имени файла, он сработал.

Ответ 6

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

Ответ 7

В моем случае эта ошибка возникла, когда имя Sub было идентично имени модуля.

Ответ 8

Удалите макрос имени и снова создайте его.
Я сделал это, и макрос работал.

Ответ 9

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

Для меня эта ошибка была решена: —

  • Включить редактирование и включение содержимого

    Включить кнопку содержимого

  • Изменение настроек макроса без программного доступа
    Шаги и детали
  • Изменение параметров макроса вместе с программными
    доступ ( не рекомендуется, если какой-либо из вышеперечисленных процессов работает.
    Это позволило бы управлять кодом для изменения элементов в VBA
    Сам проект, включая ссылки и сам код — Ссылка)

    Шаги здесь

Ответ 10

У меня была такая же проблема, как и у OP, и это было вызвано тем, что объявление опций было написано с ошибкой:

' Comment comment  

Options Explicit  

Sub someMacroMakechart()

в дополнительном модуле вместо правильного;

' Comment comment  

Option Explicit  

Sub someMacroMakechart()

Ответ 11

Сохранить как .xlsm(Excel Macro-Enabled Workbook).

Ответ 12

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

Ответ 13

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

Вот что я закончил: Application.Run( «‘» и WbName и «‘» и «! ModuleName.MacroName» )

Ответ 14

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

Ответ 15

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

Решение

With Sheets("BACKUP_QUERY")
    cbx.OnAction = .CodeName & ".ProcessCheckBox"           
End With

Как мне найти решение?

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

Ответ 16

В моем случае ошибка произошла, когда я поместил свой макрос (public sub) в раздел ThisWorkbook файла, ожидая, что он сделает его видимым для функции Application.Run. Это было не так, и я получил ту ошибку, о которой вы упоминали.

Я переместил свой макрос в отдельный модуль, и это решило проблему.

Ответ 17

проверить:

Application.Run "'Python solution macro.xlsm'!ThisWorkbook.PreparetheTables"

используйте имя модуля.

Microsoft® Excel® 2016 MSO (16.0.12228.20322), 64-разрядная версия

Файл :: Надстройки :: Управление: Надстройки Excel :: Перейти :: Поиск решения :: ОК

Запрос включения макросов для файла отсутствует.

При переходе на вкладку «Данные»:

Не удается выполнить макрос ’SOLVER.XLAMlGetGroupLabel’. Возможно, этот макрос отсутствует в текущей книге либо все макросы отключены.

Включил все макросы
Файл :: Параметры :: Центр управления безопасностью :: Параметры центра управления безопасностью :: Параметры макросов :: Включить все макросы :: ОК

Включил ActiveX
Файл :: Параметры :: Центр управления безопасностью :: Параметры центра управления безопасностью :: Параметры ActiveX :: Включить все элементы управления без ограничений и запросов :: ОК

Ничего не помогло, как включить надстройку?

Добавлено через 44 минуты
%AppData%MicrosoftAddIns — пусто

Где оно вообще должно быть и как называется файл? Если его на компе нет — как установить?

Добавлено через 8 минут
Выскакивает при закрытии

Microsoft Visual Basic for Applications

Compile error in hidden module: SolverCode.
I This error commonly occurs when code is incompatible with the version, platform, or architecture of this application. Click ‘Help’ for information on howto correct this error.

Если это оно, то в %ProgramFiles%Microsoft OfficerootOffice16LibrarySOLVER имеется 2 файла:
* SOLVER.XLAM ;
* SOLVER32.DLL ;

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

Понравилась статья? Поделить с друзьями:
  • Ошибка открытия порта entt
  • Ошибка отключения файловой системы linux error unmounting
  • Ошибка открытия порта com1 пролог
  • Ошибка отключения mi band 4
  • Ошибка открытия порта chiploader