Не работают макросы в Excel? Включите их выполнение, добавьте специальный модель с кодом, проверьте версию ОС и Эксель, убедитесь в соответствии пакета приложений, активируйте Майкрософт Офис, снимите блокировку файла, проверьте систему безопасности и применяемые библиотеки. Ниже подробно рассмотрим, в чем могут быть причины подобной неисправности, и какие шаги предпринимать для ее устранения.
Причины
Для начала стоит разобраться, почему не работает макрос в Excel, ведь от этого зависят дальнейшие шаги. К основным причинам стоит отнести:
- Функция отключена.
- Отключение отслеживания событий.
- Устаревшая операционная система.
- Несоответствие разработчика пакета офисных приложений.
- Устаревшая версия Майкрософт Офис.
- Неактивированная версия Excel.
- Заблокированный файл.
- Неправильные настройки безопасности.
- Отсутствие необходимой библиотеки и т. д.
Выше рассмотрены основные причины, почему не удается выполнить макрос в Excel. Все они могут быть решены самостоятельно с помощью приведенных ниже рекомендации. Подробнее на решении вопроса остановимся ниже.
Что делать
Многие пользователи теряются в ситуации, когда не включаются или вообще не работают макросы в Excel. Такая проблема не дает нормально пользоваться приложением и заставляет искать альтернативные варианты.
Включите опцию
Первое, что необходимо сделать — включить функцию для обеспечения ее работоспособности. Здесь многое зависит от версии Эксель.
Если не работают макросы в Excel 2003, сделайте следующие шаги:
- Войдите в «Сервис».
- Перейдите в раздел «Безопасность».
- Кликните «Уровень макросов «Низкий».
В случае, когда не работают макросы в Excel 2007, включите их следующим образом:
- Жмите на кнопку «Офис».
- Войдите в параметры Excel.
- Кликните на «Центр управления безопасности».
- Войдите в «Параметры центра управления безопасностью».
- Жмите на «Параметры макросов».
- Кликните на «Разрешить все …».
В ситуации, когда не работают макросы в Excel 2016, сделайте следующие шаги:
- Войдите в раздел «Файл».
- Кликните на кнопку «Параметры».
- Зайдите в «Центр управления безопасностью».
- Войдите в «Параметры центра управления безопасностью».
- Кликните на «Параметры …».
- Жмите на «Разрешить все …».
После внесения изменений параметра безопасности перезапустите приложение Excel, а именно закройте его полностью и откройте снова. Лишь после этого изменения вступают в силу.
Добавьте нужный модуль в книгу
Бывают ситуации, когда макросы включены, но не работают в Excel из-за отключения каким-либо элементом отслеживания событий. В таком случае сделайте следующее:
- Перейдите в редактор VBA с помощью клавиш Alt+F11.
- Вставьте указанный ниже код.
Sub Reset_Events()
Application.EnableEvents = True
End Sub
- Для выполнения кода поставьте курсор в любой точке между началом и концом.
- Кликните 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 необходимо сделать следующее:
- Войдите в Меню
- Кликните на пункт «Параметры».
- Жмите на «Центр управления безопасностью».
- Войдите в «Параметры центра управления безопасностью».
- Кликните на «Параметры макросов» и «Доверять доступ к объектной модели проектов».
Зная, почему не работают макросы в Excel, вы можете с легкостью исправить проблему и восстановить работоспособность. Если же сложности в работе возникают, вы всегда можете воспользоваться инструкцией в статье.
В комментариях расскажите, какой из приведенных выше вариантов вам помог, и что еще можно сделать.
Отличного Вам дня!
I’m new to Macros and VBA in general but my goal is pretty simple I believe. My macro should search an opened Excel document (automatically) and create a MessageBox with a warning if the WEEKNUM() function is used with only one parameter (the date).
So I’ve created my Macro in excel 2016/Visual Basic editor and have saved it as .xlam (a Excel Add-In).
Then I have copied the file to C:UsersUserAppDataRoamingMicrosoftAddIns
because that’s where the Add-Ins are located I guess. I’ve made sure that this location is a trusted one in the Excel Trust Center settings + I’ve enabled all macros in the settings.
So my macro looks like this:
Excel Objects — ThisWorkBook:
Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:00:02"), "Start"
MsgBox ("Hello World!")
End Sub
I’m using the Workbook_Open() event to start my macro.
Then my Module named kwTester which tests the document:
Private Sub Start()
'Sheet is the current sheet
Dim Sheet As Worksheet
'my Regex
Dim regEx As New RegExp
'the search pattern
Dim strPattern As String: strPattern = "^=WEEKNUM(wd+)$"
'is used to tell my if there is just one parameter
Dim verwendetKalenderwoche As Boolean
verwendetKalenderwoche = False
'CellAddress and CellFormula are just for debugging purposes
Dim CellAddress As Variant
Dim CellFormula As Variant
'Setting up the RegEx
If strPattern <> "" Then
With regEx
.Global = True
.MultiLine = True
.IgnoreCase = True
.Pattern = strPattern
End With
End If
'Code should be repeated for every opened Workbook and Sheet
'Dim book As Workbook
For Each book In Workbooks
For Each Sheet In book.Worksheets
With Sheet.UsedRange
For Each cell In Sheet.UsedRange
On Error Resume Next
CellFormula = cell.Formula
On Error Resume Next
If cell.Formula <> "" And regEx.Test(cell.Formula) Then
verwendetKalenderwoche = True
CellAddress = CellAddress & vbNewLine & Cells(cell.Row, cell.Column).Address(RowAbsolute:=False, ColumnAbsolute:=False)
End If
Next
End With
Next
Next
'if there is a WEEKNUM function with just one parameter then display msgBox and UserForm
If verwendetKalenderwoche = True Then
MsgBox "Sie verwenden die Funktion KALENDERWOCHE mit nur einem Parameter. Ab Office 2007 wird hier die amerikanische Rechenweise zur Bestimmung der Kalenderwoche verwendet." & vbNewLine & "Diese ist nicht mit der geltenden ISO-Regelung in Deutschland kompatibel." & vbNewLine & "Biite verwenden Sie wenn möglich den zusätzlichen Parameter <21> um diesen Fehler zu beheben." & vbNewLine & "Beispiel:" & vbNewLine & "KALENDERWOCHE(A2;21)", vbExclamation, "KALENDERWOCHE-Warnung"
'UserForm anzeigen um die betroffenen Zellen darzustellen
UserForm1.TextBox1.MultiLine = True
UserForm1.TextBox1.Text = CellAddress
UserForm1.Caption = "Betroffene Zellen"
UserForm1.TextBox1.ScrollBars = fmScrollBarsVertical
UserForm1.Show vbModeless
End If
End Sub
The UserForm should not be that important so I’ll not include it, it just displays the cells which contain the WEEKNUM function.
If I open up a excel document which uses the WEEKNUM function everything is working properly — My MessageBox is displayed, I receive my UserForm and this tells my which cells are using the WEEKNUM Function. Exactly how I want it to be, so I guess my code works in some way.
I’ve used the following sites to write the code:
Automatically Run Excel Macros Upon Opening Excel
Run a macro
Description of my Problem
Excel is closed — I open a file by double clicking on it — my macro is executed successfully and displays my results. But if minimize this Excel-instance and open up another file my macro is not being executed again. Same thing if I open a document from within Excel via File-Open dialogue.
What is wrong?
Is this the way the Workbook_Open Event is supposed to work or am I missing something?
Is my add-in located at the correct place? Do I have to check some other settings?
I hope my question is not considered off-topic. I was not sure where to ask — Stackoverflow or Superuser. Notify me if I should delete this question
Any input is very welcome.
Не так давно очередной раз столкнулся с ошибками приложения Excel при попытке включения макросов после открытия файлов .xlsm. Вспомнил, что подобные проблемы преследуют пользователей довольно давно, но чаще всего они наблюдались с Excel 2013 и Excel 2016. Характерные особенности этой группы ошибок следующие:
- Приложение Excel закрывается при открытии файла с макросами (при включенном режиме безопасности Включить все макросы);
- Ошибка приложения Excel возникает при попытке включить содержимое (нажатии соответствующей кнопки);
- Ошибка приложения Excel возникает при сохранении файла с макросами;
Ну и по горячим следам очередного инцидента, дабы не откладывать на потом, решил для себя собрать небольшой хаб по ошибкам приложения Excel с последующей модификацией, дабы опять не терять время на поиск информации в Сети и на составление облака причин.
Суть в том, что в процессе открытия файла xlsm, и при отключенных макросах, в верхней части основного окна (над таблицей), высвечивается строка уведомления: ПРЕДУПРЕЖДЕНИЕ СИСТЕМЫ БЕЗОПАСНОСТИ Запуск макросов отключен, с кнопкой включения содержимого (макросов). Как только пользователь её нажимает, Excel попросту аварийно завершается (падает) с ошибкой Программа Microsoft 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: вставка нового листа
Выполните приведенную последовательность действий:
- Открываем [проблемный] .xlsm-файл (файл с макросами).
- Не нажимаем кнопку Включить содержимое.
- Добавляем в книгу Excel новый лист: правая кнопка мыши на ярлыках Лист1/Лист2/Лист3 → Вставить → Лист.
- Сохраняем электронную таблицу. Закрываем Excel.
- Открываем проблемный файл заново и включаем макросы.
Решение 2: перекомпиляция проекта
Выполните последовательность действий:
- Запускаем и открываем новую книгу Excel (не ваш проблемный файл).
- Открываем меню Файл — выбираем Параметры — далее открываем Центр управления безопасностью и заходим в Параметры центра управления безопасностью.
- В разделе Параметры макросов — выставляем чекбокс Отключить все макросы с уведомлением.
- В разделе Надежные расположения — выставляем чекбокс Отключить все надежные расположения.
- В разделе Надежные документы — выставляем чекбокс Отключить надежные документы.
- Жмем везде OK. Закрываем Excel.
- Открываем [проблемный] .xlsm-файл (файл с макросами).
- Не нажимаем кнопку Включить содержимое.
- Открывает редактор Visual Basic при помощи комбинации клавиш Alt+F11. Либо можно использовать обходной маневр: в настройках включаем меню Разработчик, после этого в появившемся сверху в ленте меню Разработчик выбираем пункт Visual Basic.
- В открывшемся окне редактора Visual Basic (VBA редактор) пересохраняем проект: для этого жмем на панели инструментов кнопку Сохранить (изображение дискетки или комбинация Ctrl+S).
- Выбираем из меню Debug — выбираем пункт меню Compile VBA Project:
- Еще раз сохраняем проект кнопкой Сохранить.
- Закрываем редактор Visual Basic.
- Сохраняем файл Excel через меню Файл — опцию Сохранить (или нажатием на значок дискетки в левом верхнем углу, либо комбинация клавиш Ctrl+S).
- Возвращаем все установки безопасности, сделанные на предыдущих шагах (пункты 2-5).
- Закрываем xlsm-файл.
- Заново открываем [проблемный] файл, в верхней части, в строке статуса — включаем макросы посредством кнопки Включить содержимое.
Решение 3: добавление модуля
Дополнительное решение состоит в том, что бы внести изменения в макрос без перекомпиляции.
- Открываем [проблемный] .xlsm-файл (файл с макросами).
- Не нажимаем кнопку Включить содержимое.
- Открывает редактор Visual Basic (при помощи комбинации клавиш Alt+F11).
- Открываем меню Tools → пункт Options. В открывшемся окне переходим на вкладку General и деактивируем чекбокс Compile on Demand:
Закрываем окно Опции нажатием клавиши OK.
- В левом фрейме окна проекта (Project) спускаемся вниз, находим раздел Modules, жмем на нём правую кнопку → пункт Insert → Module:
- Далее просто закрываем окно редактора Visual Basic, сохраняем основной xslm-документ и закрываем Excel.
- Заново открываем [проблемный] файл, в верхней части, в строке статуса — включаем макросы посредством кнопки Включить содержимое.
4 / 4 / 0 Регистрация: 07.10.2016 Сообщений: 148 |
|
1 |
|
Excel Проблема с запуском макросов07.04.2019, 10:10. Показов 21342. Ответов 8
Добрый день. Столкнулся с такой проблемой на своём домашнем ПК, на рабочем такого не было, но теперь тоже появилось. Значит есть файл Excel, в котором имеются макросы, один записан в объекте workbook, другие в модуле. Так вот, всё работало, но теперь макросы перестали запускаться. При этом настройки безопасности в Excel не изменяли и запуск макросов по-прежнему включен с уведомлением. Открываешь файл, уведомления о запуске нет, макросы не запускаются. Сохраняешь файл под другим именем, открываешь и уведомление появляется и макросы работают, закрываешь, открываешь второй раз и всё, снова ничего не работает и нет уведомления. Что за ХРЕНЬ? Такого никогда не было, поэтому ничего не могу понять, какая падла вредит? Заранее благодарен за помощь!
0 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,999 |
|
07.04.2019, 14:24 |
2 |
VKont, попробуйте так — Открываете ваш файл и тут же открываете новую книгу и не Сохранить как, а просто скопируйте страницы или информацию с них в новую, скопируйте все макросы в новую, потом закройте и запустите новую дважды. Возможно какие-нибудь ссылки не те появляются. Но это всё на ощупь
0 |
4 / 4 / 0 Регистрация: 07.10.2016 Сообщений: 148 |
|
07.04.2019, 15:06 [ТС] |
3 |
Спасибо за совет, но к сожалению не помогло. Грешил изначально на Excel 2016, с него всё началось, потом вернулся на 2010, но проблема возникла заново. Теперь открываю любой файл Excel с макросом и при повторном открытии макросы этого файла не работают автоматом. Если макрос назначен на кнопку, то работает, если макрос на событии — нет. Грешил на антивирус, на вирус, откуда ноги растут не пойму, бред какой-то Добавлено через 9 минут
0 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,999 |
|
07.04.2019, 15:14 |
4 |
VKont, а антивирус какой-то стоит? Если файл запустить с флэшки, будет то же самое? Если да, то вариант сходить к другу на комп с антивирусом и проверить флэш. Либо через удаленный доступ проверить.
0 |
4 / 4 / 0 Регистрация: 07.10.2016 Сообщений: 148 |
|
07.04.2019, 15:41 [ТС] |
5 |
а антивирус какой-то стоит? Если файл запустить с флэшки, будет то же самое? Антивирь DrWeb Security Space 12.0. В общем открыл файл с макросом, который с hdd, макрос естественно не запустился, сохранил этот файл с тем же именем через «сохранить как» на флешку. Открываю с флешки первый раз, макрос запускается, закрываю, открываю второй и всё. Добавлено через 11 минут
0 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,999 |
|
07.04.2019, 15:55 |
6 |
VKont, а файл у вас xlsm? Если да, попробуйте Сохранить как в формате 2003 (xls)
0 |
4 / 4 / 0 Регистрация: 07.10.2016 Сообщений: 148 |
|
07.04.2019, 16:10 [ТС] |
7 |
Burk, сохранил в xls (2003), первый раз открылся нормально, второй раз снова без запуска макросов. Как-будто файл в первый раз открытия становится доверенным, но почему тогда макросы не запускаются.
0 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,999 |
|
07.04.2019, 16:27 |
8 |
VKont, у вас кнопки ActiveX? Что-то у меня было подобное и по-моему я исправил всё это установками Параметры безопасности -> Включить все макросы и Доверять доступ к объектной модели Добавлено через 12 минут
1 |
4 / 4 / 0 Регистрация: 07.10.2016 Сообщений: 148 |
|
08.04.2019, 00:33 [ТС] |
9 |
Burk, блин, спасибо за направление в нужное русло! Еще раз прошёлся по настройкам и попробовал установить галочку «отключить надежные документы» в пункте «надежные документы» и всё заработало! Прям счастье-то какое
0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
08.04.2019, 00:33 |
Помогаю со студенческими работами здесь Проблема с запуском Проблема с запуском Проблема с запуском пк Проблема с запуском Искать еще темы с ответами Или воспользуйтесь поиском по форуму: 9 |
Хитрости »
1 Май 2011 131630 просмотров
Почему не работает макрос?
Предположим, Вы скачали файл с данного сайта с примером макроса, открываете файл, но макросы в нем не работают! Как такое может быть? Неужели автор сайта выложил неработающий пример и не знает об этом? И тем более как может случиться такое, что Вы перенесли со своего ПК на другой ПК файл с рабочими макросами на флешке, запускаете, а он не работает… Почему? Вроде все правильно делаете, да ведь и у Вас работает на ПК. И начинает закрадываться мысль: «А чем же этот ПК и Excel на нем такие особенные?». А ответ может быть прост — перед выполнением макроса не было разрешено выполнение этих самых макросов. Да, в большинстве случаев по умолчанию выполнение макросов в Excel отключено. И их надо включить. Для этого:
- Excel 2003:
Сервис-Безопасность-Уровень макросов «Низкий» - Excel 2007:
Кнопка Офис—Параметры Excel(Excel Options) —Центр управления безопасностью(Trust Centr) —Параметры центра управления безопасностью(Trust Centr Settings) —Параметры макросов(Macro Settings) —Разрешить все макросы(Enable All Macros) - Excel 2010-2016:
Файл(File)—Параметры(Options) —Центр управления безопасностью(Trust Centr) —Параметры центра управления безопасностью(Trust Centr Settings) —Параметры макросов(Macro Settings) —Разрешить все макросы(Enable All Macros)
ВАЖНО! После изменения параметров безопасности макросов необходимо перезапустить приложение Excel: закрыть его полностью(т.е. закрыть все файлы Excel) и открыть заново. Только после этого изменения вступят в силу.
Если макросы уже включены, но некоторые макросы отказываются работать (как правило те, которые записаны в модулях листов и книг и запускаются при наступлении определенного события — Worksheet_SelectionChange (выделение ячеек), Worksheet_Change (изменение значений ячеек) и т.п.), то скорее всего когда-то вы выполнили какой-нибудь макрос и он отключил отслеживание событий. Тогда надо в любую активную книгу добавить модуль(переходим в редактор VBA(Alt+F11) —Insert —Module), вставить в него приведенный ниже код и запустить:
Sub Reset_Events() Application.EnableEvents = True End Sub
чтобы запустить(выполнить) данный макрос макрос необходимо установить курсор в любое место между Sub и End Sub и нажать клавишу F5.
Так же см.:
Управление безопасностью макросов
Как запустить файл с включенными макросами?
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика