Ошибка the macros in this project are disabled

 

Бахтиёр

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

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

Excel 365

Добрый день.
Пытаюсь на компе друга на окне Immediate выполнить Selection.Offset(1).Select
Выдаёт ошибку (см.скрин)
Разрешил макросы — все равно выдает ошибку.

Как лечить?

P.S. Офис у него 2010

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

  • вопрос.png (7.49 КБ)

 

Karataev

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

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

Такое может быть, когда открыто несколько книг или надстроек. Какая-то одна из этих книг или надстроек активна. Если запуск макросов в активной книге или надстройке запрещен, то в окне Immediate будет ошибка, о которой Вы пишите.
Чтобы не было ошибки, в окне Project щелкните два раза по какому-нибудь модулю книги или надстройки, в которой разрешены макросы, а затем пробуйте запускать код в окне Immediate.

Изменено: Karataev05.05.2016 10:36:23

 

Бахтиёр

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

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

Excel 365

разве разрешение макросов даётся для каждой книги отдельно?
это не параметр самого Application’a?

 

Karataev

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

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

Для каждой книги нужно делать разрешение макросов.

 

Бахтиёр

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

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

Excel 365

В данный момент не могу проверить на компе, где это ошибка вылезла, но:
У себя проделал:
1) Пользовался одной надстройкой, отключил ее.
2) Закрыл и открыл Эксель, проверил нет никаких надстроек и Персонал
3) Отключил макросы и сохранил книгу
4) Открыл книгу — Окно Immediate работает

Проделал такое с двумя одновременно открытыми книгами — Окно Immediate работает

 

Karataev

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

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

В редакторе VBE неудобно сделано, т.к. не понятно, какая книга, надстройка активна в данный момент. Только двойным щелчком можно понять, других признаков нет. Поэтому и возникла у Вас путаница с Immediate.

 

Бахтиёр

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

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

Excel 365

спасибо, попробую попозже на том компе, где вылезла ошибка

 

The_Prist

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

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

Профессиональная разработка приложений для MS Office

Проясню:
если открывали книгу первый раз на ПК, то вполне могли получить предупреждение о том, что книга в защищенном просмотре. Этот режим надо отключить или сразу или чуть позже через меню Файл -Сведения. Если файл в защищенном режиме, то надо будет нажать кнопку «Разрешить редактирование». Пока не отключите этот режим, то если данная книга будет активна, то окно Immediate не будет выполнять команды, ссылаясь на запрет выполнения макросов.
Однако после отключения защищенного режима можете получить так же предупреждение о том, что есть содержимое(макросы) и запрос на включение. Этот запрос будет лишь в случае, если в настройках параметров безопасности установлено «Запуск макросов с уведомлением». При таком запросе надо разрешить макросы.

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

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Бахтиёр

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

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

Excel 365

Дмитрий, спасибо за подробный ответ.

 

voice

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

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

#10

24.12.2016 22:33:46

У меня похожая проблема. Всё работало, но после каких-то манипуляций перестали запускаться макросы в документе. Макросы разрешены, не понимаю, в чем может быть причина?
При запуске макроса по кнопке на листе выскакивает сообщение, что макросы отключены системой безопасности. Нужно перезапустить книгу и подтвердить включение макросов. Но не выскакивает предложение сделать это при последующем открытии…

Прошу прощения, разобрался! Оказывается всё-таки дело было в настройках безопасности макросов!  

Изменено: voice24.12.2016 22:44:29

When opening a Word document a macro should start and it did for a while.
But then I saved the document when the macro was activated and after that I get the error message:

The macros in this project have been disabled 

when I open the document.

I have tried different security settings.

Any idea what might be the issue?

asked Jan 14, 2009 at 15:35

Fred's user avatar

If error in your macro has blocked macros in project, it usually takes long time to search for a solution, as MS seems not approving wide usage of macros.

In Word :
The solution about enabling macros in File -> Options -> Advanced is NOT enough.

Just go to:
Developer -> Protect -> Restrict Editing -> opens up right panel, push Stop Protecting button.

Hope it helps.

answered Sep 30, 2018 at 13:20

WebComer's user avatar

WebComerWebComer

1,1312 gold badges17 silver badges31 bronze badges

In Word: Tools->Macro_>security and set to, say, medium. Alternatives include Trusted Locations and Self-Certified projects.

answered Jan 14, 2009 at 15:46

Fionnuala's user avatar

FionnualaFionnuala

90.2k7 gold badges113 silver badges152 bronze badges

In the ribbon: in Developer, click on macro securiry, then enable all macros.
Restart Xcel

Enable The macros in this project

answered Jun 19, 2019 at 15:08

Condemateguadua's user avatar

Аник

1

Невозможно вставить текст (макросы отключены)

03.11.2010, 12:28. Показов 34516. Ответов 18


Студворк — интернет-сервис помощи студентам

Здравствуйте!У меня возникла следующая проблема.. При попытке вставить в один документ кусочек со второго элементарными «копировать- вставить» мне выдают вот такую каляку: The macros in this project are disabled.Please refer to the online help or dokumentation of the host application to determine how to enable macros. что делать???????Кучу раз переустанавливала офис,бесполезно.Сейчас стоит2007

290 / 175 / 3

Регистрация: 01.11.2009

Сообщений: 550

03.11.2010, 14:25

2

скорей всего в файле включены маркосы. попробуйте их отключить. или при вставке выбрать вариант только текст.



0



-17 / 15 / 0

Регистрация: 22.12.2009

Сообщений: 404

04.11.2010, 01:15

3

поддерживаю выше сказанное



0



Busine2009

Заблокирован

06.11.2010, 12:37

4

Аник,
не могу у себя создать такую ситуацию. Если можно, то вставьте фрагмент документа.



0



javvva

07.11.2010, 10:03

Не по теме:

Busine2009, судя по тому что автор молчит уже почти неделю ему это нах.. не нужно.



0



1 / 1 / 0

Регистрация: 08.11.2010

Сообщений: 4

08.11.2010, 20:01

6

Мне очень нужно!! Точно такая же бяка вылезает. Причем появилась вроде как после установки word 10. Удалил, установил 2007 — пишет точно также при попытке вставить текст из буфера обмена. Причем без разницы откуда текст взят, даже из самого ворда.
Пишет The macros in this project are disabled.Please refer to the online help or dokumentation of the host application to determine how to enable macros. Нажимаешь «окей» и ничего не происходит. Помогите, люди добрые, люди знающие!)



0



Почетный модератор

Эксперт по компьютерным сетямЭксперт Windows

28040 / 15773 / 982

Регистрация: 15.09.2009

Сообщений: 67,752

Записей в блоге: 78

08.11.2010, 20:20

7

Цитата
Сообщение от maarik
Посмотреть сообщение

Please refer to the online help or dokumentation of the host application to determine how to enable macros.

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



1



Busine2009

Заблокирован

08.11.2010, 20:30

8

maarik,
Сначала вот это:
Круглая кнопка — Параметры Word — Ресурсы — Центр диагностики Microsoft Office.
Если не поможет, то:
Пуск — Панель управления — Установка и удаление программ — Microsoft Office 2007 — Изменить — Восстановить.

Затем.
Смысла не понимаю, но чтобы этого не было, нужно сделать следующее:
Круглая кнопка — Параметры Word — Центр управлением безопасностью — Параметры центра управления безопасностью… — Включить все макросы (не рекомендуется, возможен запуск опасной программы) — Окей.

Добавлено через 7 минут

Цитата
Сообщение от magirus
Посмотреть сообщение

чтобы определить как включить макросы.

при чём здесь макросы?



1



Почетный модератор

Эксперт по компьютерным сетямЭксперт Windows

28040 / 15773 / 982

Регистрация: 15.09.2009

Сообщений: 67,752

Записей в блоге: 78

08.11.2010, 21:11

9

Цитата
Сообщение от Busine2009
Посмотреть сообщение

Включить все макросы

действительно при чем?….



1



Busine2009

Заблокирован

08.11.2010, 21:19

10

magirus,
логики никакой нет, но

The macros in this project are disabled

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



1



magirus

08.11.2010, 21:23

Не по теме:

Цитата
Сообщение от Busine2009
Посмотреть сообщение

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

а кто спорит? здесь «как включить макросы»=»как установить низкий уровень безопасности» не так ли?



1



1 / 1 / 0

Регистрация: 08.11.2010

Сообщений: 4

09.11.2010, 18:10

12

Всем спасибо!! Вы были правы, просто надо было в надстройках поставить нужную галочку.)



1



Busine2009

Заблокирован

09.11.2010, 20:24

13

в надстройках поставить нужную галочку.

что за галочку?
Нельзя оставлять безопасность в низком режиме.

Добавлено через 1 минуту

Цитата
Сообщение от maarik
Посмотреть сообщение

в надстройках

может быть в настройках?



0



1 / 1 / 0

Регистрация: 08.11.2010

Сообщений: 4

09.11.2010, 22:06

14

именно в надстройках(2007 версия). Почему нельзя?



0



Busine2009

Заблокирован

10.11.2010, 20:28

15

maarik,
ради интереса, напишите, что сделали. Просто здесь никто не предлагал лезть в «Надстройки».



0



5561 / 1367 / 150

Регистрация: 08.02.2009

Сообщений: 4,107

Записей в блоге: 30

10.11.2010, 23:10

16

Что у maarik, что у Аник сообщения «битые»:
dokumentation — такого слова просто не м. б. в хорошем ПО.



0



1 / 1 / 0

Регистрация: 08.11.2010

Сообщений: 4

15.11.2010, 19:53

17

Цитата
Сообщение от Busine2009
Посмотреть сообщение

maarik,
ради интереса, напишите, что сделали. Просто здесь никто не предлагал лезть в «Надстройки».

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



0



Busine2009

Заблокирован

15.11.2010, 20:14

18

maarik,
полностью напиши, что сделал, чтобы др. знали, что делать.



0



0 / 0 / 0

Регистрация: 23.10.2009

Сообщений: 58

20.08.2012, 12:28

19

Так, люди, у вас и у меня это сообщение. Но надо разобраться — относится ли оно к макросам. Кое у кого не влияет на это уровень безопасности, у кого-то — нет. Какие-то там «Word — Ресурсы — Центр диагностики M» — это, вообще что?

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



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

20.08.2012, 12:28

19

 

Бахтиёр

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

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

Excel 365

Добрый день.
Пытаюсь на компе друга на окне Immediate выполнить Selection.Offset(1).Select
Выдаёт ошибку (см.скрин)
Разрешил макросы — все равно выдает ошибку.

Как лечить?

P.S. Офис у него 2010

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

  • вопрос.png (7.49 КБ)
 

Karataev

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

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

Такое может быть, когда открыто несколько книг или надстроек. Какая-то одна из этих книг или надстроек активна. Если запуск макросов в активной книге или надстройке запрещен, то в окне Immediate будет ошибка, о которой Вы пишите.
Чтобы не было ошибки, в окне Project щелкните два раза по какому-нибудь модулю книги или надстройки, в которой разрешены макросы, а затем пробуйте запускать код в окне Immediate.

Изменено: Karataev05.05.2016 10:36:23

 

Бахтиёр

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

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

Excel 365

разве разрешение макросов даётся для каждой книги отдельно?
это не параметр самого Application’a?

 

Karataev

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

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

Для каждой книги нужно делать разрешение макросов.

 

Бахтиёр

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

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

Excel 365

В данный момент не могу проверить на компе, где это ошибка вылезла, но:
У себя проделал:
1) Пользовался одной надстройкой, отключил ее.
2) Закрыл и открыл Эксель, проверил нет никаких надстроек и Персонал
3) Отключил макросы и сохранил книгу
4) Открыл книгу — Окно Immediate работает

Проделал такое с двумя одновременно открытыми книгами — Окно Immediate работает

 

Karataev

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

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

В редакторе VBE неудобно сделано, т.к. не понятно, какая книга, надстройка активна в данный момент. Только двойным щелчком можно понять, других признаков нет. Поэтому и возникла у Вас путаница с Immediate.

 

Бахтиёр

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

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

Excel 365

спасибо, попробую попозже на том компе, где вылезла ошибка

 

The_Prist

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

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

Профессиональная разработка приложений для MS Office

Проясню:
если открывали книгу первый раз на ПК, то вполне могли получить предупреждение о том, что книга в защищенном просмотре. Этот режим надо отключить или сразу или чуть позже через меню Файл -Сведения. Если файл в защищенном режиме, то надо будет нажать кнопку «Разрешить редактирование». Пока не отключите этот режим, то если данная книга будет активна, то окно Immediate не будет выполнять команды, ссылаясь на запрет выполнения макросов.
Однако после отключения защищенного режима можете получить так же предупреждение о том, что есть содержимое(макросы) и запрос на включение. Этот запрос будет лишь в случае, если в настройках параметров безопасности установлено «Запуск макросов с уведомлением». При таком запросе надо разрешить макросы.

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

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Бахтиёр

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

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

Excel 365

Дмитрий, спасибо за подробный ответ.

 

voice

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

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

#10

24.12.2016 22:33:46

У меня похожая проблема. Всё работало, но после каких-то манипуляций перестали запускаться макросы в документе. Макросы разрешены, не понимаю, в чем может быть причина?
При запуске макроса по кнопке на листе выскакивает сообщение, что макросы отключены системой безопасности. Нужно перезапустить книгу и подтвердить включение макросов. Но не выскакивает предложение сделать это при последующем открытии…

Прошу прощения, разобрался! Оказывается всё-таки дело было в настройках безопасности макросов!  

Изменено: voice24.12.2016 22:44:29

  • Remove From My Forums
  • General discussion

  • I have 2 Macros that work in other computers but in this computer they do not work.  The error message is: 

    «The macros in this project are disabled.  Please refer to the online help or documentation of the host application to determine how to enable macros.»

    I looked at some of the documentation nothing worked.

    In Outlook 2010 I went to :

    >File>Options>Trust Center>Trust Center setting…>Macro Settings and Enabled All Macros

    This did not fix any of the problems.  

    Any Suggestions?

    • Changed type

      Monday, May 6, 2013 2:00 PM
      op claimed that the issue has been resolved

1562 / 453 / 51

Регистрация: 10.04.2009

Сообщений: 7,846

1

Макросы в этом проекте отключены

18.08.2020, 09:32. Показов 7190. Ответов 11


здравствуйте чтобы не получать сообщение
The macros in this project are disabled. Please refer to the online help or documentation of the host apliccation to determine how to enable macros. Макросы в этом проекте отключены. Пожалуйста, обратитесь к справке или документации принимающей apliccation чтобы определить, как разрешить выполнение макросов.
Лечится Сервис Макрос Безопасность Низкая Потом закрыть документ и открыть его снова

Я наивно думал, что если юзеру отдать файл Normal.dotm и он его положит в папку микрософтшаблоны-то у него не будет проблем, не будет этого сообщения, оказалось это не так
вопрос, что нужно сделать ещё чтобы помещения этого файла в нужную папку было достаточно? спс

0

828 / 459 / 79

Регистрация: 18.05.2016

Сообщений: 1,229

Записей в блоге: 4

18.08.2020, 09:42

2

Во-первых подменять Normal.dotm — не очень хорошая идея. В нём могут быть личные макросы или какие-то другие штуки пользователя.
Лучше своё творчество предоставлять в виде надстройки. А вот для её установки мало просто положить её в папку, надо ещё её включить в настройках Но без всех этих манипуляций в итоге не обойтись. Макрософак после многочисленных нападок в свой адрес очень печётся о безопасности и теперь всё везде надо подтверждать и включать. Это хорошо, если политика безопасности не потребует ещё и сертификаты подключать к своим проектам.

1

1562 / 453 / 51

Регистрация: 10.04.2009

Сообщений: 7,846

18.08.2020, 09:58

 [ТС]

3

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

0

КостяФедореев

Часто онлайн

771 / 520 / 232

Регистрация: 09.01.2017

Сообщений: 1,785

18.08.2020, 10:07

4

Ципихович Эндрю,
это для excel, может и в word прокатит

Visual Basic
1
2
3
4
5
6
7
8
9
Sub DeleteFileBlock()
    On Error Resume Next
    Key$ = "HKEY_CURRENT_USERSoftwareMicrosoftOffice14.0ExcelSecurityFileBlock"
    arr = Array("XL2Macros", "XL2Worksheets", "XL3Macros", "XL3Worksheets", _
                "XL4Macros", "XL4Workbooks", "XL4Worksheets")
    For Each Item In arr
        CreateObject("WScript.Shell").RegWrite Key$ & Item, 0, "REG_DWORD"
    Next
End Sub

в процедуру Workbook_Open

1

Ципихович Эндрю

1562 / 453 / 51

Регистрация: 10.04.2009

Сообщений: 7,846

18.08.2020, 10:26

 [ТС]

5

да есть похожее у меня в запасниках, щас нужно вспомнить

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
Option Explicit
 
Sub Меняем_доверие_к_проектам_VBA_и_уровень_безопасности_в_Word()
 
Dim i As Integer
Dim objWord As Object
Dim objShell As Object
Dim vatDir As String
Dim vatReturn As Currency
Dim Papka As String
Dim AppWord As Word.Application
 
On Error Resume Next
 
Set objWord = CreateObject("Word.Application")
Set objShell = CreateObject("WScript.Shell")
 
For i = 0 To 50
On Error GoTo 150
vatDir = objShell.RegRead( _
"HKEY_CURRENT_USERSoftwareMicrosoftOffice" & objWord.Version & "WordSecurityTrusted LocationsLocation" & i & "Path")
 
If vatDir = ThisWorkbook.Path Then Exit For
If i < 0 Then
150 objShell.RegWrite _
    "HKEY_CURRENT_USERSoftwareMicrosoftOffice" & objWord.Version & "WordSecurityTrusted LocationsLocation" & i & "Description", "Назовите сами", "REG_SZ"
    objShell.RegWrite _
    "HKEY_CURRENT_USERSoftwareMicrosoftOffice" & objWord.Version & "WordSecurityTrusted LocationsLocation" & i & "AllowSubfolders", 1, "REG_DWORD"
    objShell.RegWrite _
    "HKEY_CURRENT_USERSoftwareMicrosoftOffice" & objWord.Version & "WordSecurityTrusted LocationsLocation" & i & "Path", ActiveDocument.Path, "REG_SZ"
    'разрешение доступа к сетевым папкам
    objShell.RegWrite _
"HKEY_CURRENT_USERSoftwareMicrosoftOffice" & objWord.Version & "WordSecurityTrusted LocationsAllowNetworkLocations", 1, "REG_DWORD"
Exit For
End If
Next
 
On Error GoTo 200
vatReturn = objShell.RegRead( _
"HKEY_CURRENT_USERSoftwareMicrosoftOffice" & objWord.Version & "WordSecurityAccessVBOM")
 
If vatReturn = 0 Then
    'за доверительный доступ к проектам VBA отвечает параметр "AccessVBOM"
200 objShell.RegWrite _
    "HKEY_CURRENT_USERSoftwareMicrosoftOffice" & objWord.Version & "WordSecurityAccessVBOM", 1, "REG_DWORD"
    'за уровень безопасности отвечает параметр "Level"
    objShell.RegWrite _
    "HKEY_CURRENT_USERSoftwareMicrosoftOffice" & objWord.Version & "WordSecurityLevel", 1, "REG_DWORD"
    
End If
 
    Set AppWord = New Word.Application
    AppWord.Visible = True
    AppWord.Documents.Open "J:1.doc"
    Word.Application.Quit
 
End Sub

вопрос в том, если поместить в Sub AutoOpen() как же он выполнит, если н доходя до этого сработает зашита

Добавлено через 12 минут
сорри там в строке 23 ошибка, нужно

Visual Basic
1
If vatDir = ActiveDocument.Path Then Exit For

0

828 / 459 / 79

Регистрация: 18.05.2016

Сообщений: 1,229

Записей в блоге: 4

18.08.2020, 10:56

6

Как вы всё это собираетесь делать, если у вас по всему ворду макросы отключены? Может, во внешнем vbs-скрипте это ещё и сработало бы

0

1562 / 453 / 51

Регистрация: 10.04.2009

Сообщений: 7,846

18.08.2020, 11:05

 [ТС]

7

создал Нормал.дотм открыл его, именно в меню выбрал Открыть, сделал процедуру Меняем_доверие_к_проектам_VBA_и_уровень_безопаснос ти_в_Word, раздал Нормал.дотм — будут у пользователя проблемы?

0

828 / 459 / 79

Регистрация: 18.05.2016

Сообщений: 1,229

Записей в блоге: 4

18.08.2020, 11:23

8

Если в настройках ворда в безопасности макросов эти самые макросы отключены, то VBA-кодом из самого ворда вы никакие процедуры по включению макросов не запустите. Попробуйте на своём компе это проделать.
Можно эту процедуру адаптировать в vbs-скрипт и дать пользователю уже ДВА файла. Но проще объяснить ему, какой пункт в настройках включить.
Хотя можно извернуться, и сделать rar-sfx-архив-инсталлятор с этими двумя файлами и командами на копирование нормала и запуска скрипта. Тогда для пользователя это будет всего лишь один exe-шник.
Судя по всему, скрипт только модифицирует реестр. Ну тогда вместо скрипта в архив засунуть reg-файл

0

Ципихович Эндрю

1562 / 453 / 51

Регистрация: 10.04.2009

Сообщений: 7,846

19.08.2020, 10:45

 [ТС]

9

вспомнил, вроде на этом же форуме качал цеэмдэ файл для этого:

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
@echo off :: Macros Access Script by Alex Dragokas echo. echo Утилита включения макросов для MS Office 2003-2013 echo. :ch_Security echo Введите цифру и нажмите кнопку ENTER: echo. echo 1 - Запуск макросов без уведомления. echo 2 - Запуск макросов с разрешения пользователя. echo 3 - Запретить запуск неподписанных макросов (не уведомлять). echo. set ch= set /p "ch=Ваш выбор: " echo. if "%ch%"=="1" set "MacrosLevel=1" if "%ch%"=="2" set "MacrosLevel=2" if "%ch%"=="3" set "MacrosLevel=3" if "%ch%" neq "1" if "%ch%" neq "2" if "%ch%" neq "3" goto ch_Security :ch_VBA echo Хотите включить программный доступ к коду макроса? echo. echo 1 - Да. Разрешить. echo 2 - Нет. Запретить. echo. set ch= set /p "ch=Ваш выбор: " echo. if "%ch%"=="1" set "ProjectLevel=1" if "%ch%"=="2" set "ProjectLevel=0" if "%ch%" neq "1" if "%ch%" neq "2" goto ch_VBA   :: Проверяю, запущен ли хоть один из процессов MS Office :Check call :CheckRun || (echo.& echo НЕЛЬЗЯ продолжить. Сначала нужно завершить все офисные приложения.& echo.& pause & echo.& goto Check)   For %%k in (   HKCUSoftwareMicrosoftOffice   HKCUSoftwareWow6432NodeMicrosoftOffice ) do (   For /F "tokens=5 delims=" %%a in ('reg query "%%k" 2^>NUL ^| findstr /R "^.*[0-9].*"') do (     if "%%a" neq "8.0" (       if "%%a"=="9.0"  (echo Обнаружен MS Office 2000 & call :EnumApps 2003 "%%a")       if "%%a"=="10.0" (echo Обнаружен MS Office XP   & call :EnumApps 2003 "%%a")       if "%%a"=="11.0" (echo Обнаружен MS Office 2003 & call :EnumApps 2003 "%%a")       if "%%a"=="12.0" (echo Обнаружен MS Office 2007 & call :EnumApps 2007 "%%a")       if "%%a"=="13.0" (echo Обнаружен MS Office 2010 & call :EnumApps 2007 "%%a")       if "%%a"=="14.0" (echo Обнаружен MS Office 2010 & call :EnumApps 2007 "%%a")       if "%%a"=="15.0" (echo Обнаружен MS Office 2013 & call :EnumApps 2007 "%%a")       if not Defined isChanges (echo Обнаружена неизвестная версия MS Office & call :EnumApps 2007 "%%a")       echo.     )   ) ) pause exit /B   :EnumApps %1-mso.family %2-key.version   Set "isChanges=true"   For %%k in (     HKCUSoftwareMicrosoftOffice%~2     HKCUSoftwareWow6432NodeMicrosoftOffice%~2   ) do (     For /F "tokens=6 delims=" %%a in ('reg query "%%k" 2^>NUL') do (       if /i "%%a"=="Word" call :ChangeSecurity "%~1" "%~2" "%%a"       if /i "%%a"=="Excel" call :ChangeSecurity "%~1" "%~2" "%%a"       if /i "%%a"=="PowerPoint" call :ChangeSecurity "%~1" "%~2" "%%a"       if /i "%%a"=="Access" call :ChangeSecurity "%~1" "%~2" "%%a"       if /i "%%a"=="Outlook" call :ChangeSecurity "%~1" "%~2" "%%a"     )   ) Exit /B   :ChangeSecurity %1-mso.family %2-key.version %3-Application   echo %~3   if "%~1"=="2003" reg add "HKCUSoftwareMicrosoftOffice%~2%~3Security" /v Level /t REG_DWORD /d %MacrosLevel% /f   if "%~1"=="2007" reg add "HKCUSoftwareMicrosoftOffice%~2%~3Security" /v VBAWarnings /t REG_DWORD /d %MacrosLevel% /f   if /i "%~3" neq "Outlook" if "%~2" neq "9.0" reg add "HKCUSoftwareMicrosoftOffice%~2%~3Security" /v AccessVBOM /t REG_DWORD /d %ProjectLevel% /f Exit /B   :CheckRun   TASKLIST /FI "imagename eq winword.exe" | find /i "winword.exe" && exit /B 1   TASKLIST /FI "imagename eq excel.exe" | find /i "excel.exe" && exit /B 1   TASKLIST /FI "imagename eq powerpnt.exe" | find /i "powerpnt.exe" && exit /B 1   TASKLIST /FI "imagename eq outlook.exe" | find /i "outlook.exe" && exit /B 1   TASKLIST /FI "imagename eq msaccess.exe" | find /i "msaccess.exe" && exit /B 1 Exit /B 0

Добавлено через 1 час 35 минут
ну и на сегодняшний день под строкой 49 нужно добавить строку

Windows Batch file
1
if "%%a"=="16.0" (echo Обнаружен MS Office 2016 & call :EnumApps 2007 "%%a")

правда уже есть оффис 2019, кто нибудь может добавить строку для оффиса 2019 и опробовать? спс

0

Эксперт WindowsАвтор FAQ

17951 / 7587 / 889

Регистрация: 25.12.2011

Сообщений: 11,317

Записей в блоге: 17

19.08.2020, 21:45

10

Очень сильно не советую так делать для озвученных целей. Пошифруете к хренам всё у юзера. Сейчас как раз гуляет эта зараза в виде имейл от подставных адресатов с макросами в аттаче. С отключенной защитой наломаете дров. Еще и мое имя в скрипте.

По нормальному это делается — покупается сертификат, и ним подписывается документ. Выставляется настройка — доверять подписанным макросам. Либо как вариант (без покупки) выпускаете само-подписанный серт, импортируете в корневое хранилище. Сам так не пробовал, но должно проканать.

0

1562 / 453 / 51

Регистрация: 10.04.2009

Сообщений: 7,846

20.08.2020, 08:53

 [ТС]

11

Цитата
Сообщение от Dragokas
Посмотреть сообщение

Еще и мое имя в скрипте.

не беспокойтесь за это))

0

828 / 459 / 79

Регистрация: 18.05.2016

Сообщений: 1,229

Записей в блоге: 4

21.08.2020, 09:11

12

Цитата
Сообщение от Dragokas
Посмотреть сообщение

покупается сертификат, и ним подписывается документ

покупать не обязательно. в составе офиса есть утилита «создание цифрового сертификата» SELFCERT.EXE. Она создаёт личный локальный сертификат, которым можно подписать любой свой проект. При первом запуске проекта на другом компутаторе и включенной опции доверять только подписанным, он покажет свойства подписи и сертификат можно будет установить. После этого данный проект будет вполне легально работать. При первой же правке VBA-кода в проекте, подпись слетает, о чём предупреждает. Надо повторно подписывать. Подписывать можно вообще абсолютно любым сертификатом, который есть на компе.
Для безопасности офиса в этой всей схеме важно только то, что пользователь самостоятельно принимает решение о подписывании, самостоятельно принимает подпись проекта и таким образом активирует доверие к нему. А подмена файла проекта или его кода это доверие сбрасывает. Т.е. защита работает в полном объёме

1

IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

21.08.2020, 09:11

12

 

Бахтиёр

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

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

Excel 365

Добрый день.
Пытаюсь на компе друга на окне Immediate выполнить Selection.Offset(1).Select
Выдаёт ошибку (см.скрин)
Разрешил макросы — все равно выдает ошибку.

Как лечить?

P.S. Офис у него 2010

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

  • вопрос.png (7.49 КБ)
 

Karataev

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

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

Такое может быть, когда открыто несколько книг или надстроек. Какая-то одна из этих книг или надстроек активна. Если запуск макросов в активной книге или надстройке запрещен, то в окне Immediate будет ошибка, о которой Вы пишите.
Чтобы не было ошибки, в окне Project щелкните два раза по какому-нибудь модулю книги или надстройки, в которой разрешены макросы, а затем пробуйте запускать код в окне Immediate.

Изменено: Karataev05.05.2016 10:36:23

 

Бахтиёр

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

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

Excel 365

разве разрешение макросов даётся для каждой книги отдельно?
это не параметр самого Application’a?

 

Karataev

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

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

Для каждой книги нужно делать разрешение макросов.

 

Бахтиёр

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

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

Excel 365

В данный момент не могу проверить на компе, где это ошибка вылезла, но:
У себя проделал:
1) Пользовался одной надстройкой, отключил ее.
2) Закрыл и открыл Эксель, проверил нет никаких надстроек и Персонал
3) Отключил макросы и сохранил книгу
4) Открыл книгу — Окно Immediate работает

Проделал такое с двумя одновременно открытыми книгами — Окно Immediate работает

 

Karataev

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

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

В редакторе VBE неудобно сделано, т.к. не понятно, какая книга, надстройка активна в данный момент. Только двойным щелчком можно понять, других признаков нет. Поэтому и возникла у Вас путаница с Immediate.

 

Бахтиёр

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

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

Excel 365

спасибо, попробую попозже на том компе, где вылезла ошибка

 

The_Prist

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

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

Профессиональная разработка приложений для MS Office

Проясню:
если открывали книгу первый раз на ПК, то вполне могли получить предупреждение о том, что книга в защищенном просмотре. Этот режим надо отключить или сразу или чуть позже через меню Файл -Сведения. Если файл в защищенном режиме, то надо будет нажать кнопку «Разрешить редактирование». Пока не отключите этот режим, то если данная книга будет активна, то окно Immediate не будет выполнять команды, ссылаясь на запрет выполнения макросов.
Однако после отключения защищенного режима можете получить так же предупреждение о том, что есть содержимое(макросы) и запрос на включение. Этот запрос будет лишь в случае, если в настройках параметров безопасности установлено «Запуск макросов с уведомлением». При таком запросе надо разрешить макросы.

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

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Бахтиёр

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

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

Excel 365

Дмитрий, спасибо за подробный ответ.

 

voice

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

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

#10

24.12.2016 22:33:46

У меня похожая проблема. Всё работало, но после каких-то манипуляций перестали запускаться макросы в документе. Макросы разрешены, не понимаю, в чем может быть причина?
При запуске макроса по кнопке на листе выскакивает сообщение, что макросы отключены системой безопасности. Нужно перезапустить книгу и подтвердить включение макросов. Но не выскакивает предложение сделать это при последующем открытии…

Прошу прощения, разобрался! Оказывается всё-таки дело было в настройках безопасности макросов!  

Изменено: voice24.12.2016 22:44:29

  • Remove From My Forums
  • General discussion

  • I have 2 Macros that work in other computers but in this computer they do not work.  The error message is: 

    «The macros in this project are disabled.  Please refer to the online help or documentation of the host application to determine how to enable macros.»

    I looked at some of the documentation nothing worked.

    In Outlook 2010 I went to :

    >File>Options>Trust Center>Trust Center setting…>Macro Settings and Enabled All Macros

    This did not fix any of the problems.  

    Any Suggestions?

    • Changed type

      Monday, May 6, 2013 2:00 PM
      op claimed that the issue has been resolved

I have VBA code in Excel that calls a Word file in a specified local folder.

For some users it turns the following error:

The macros in this project are disabled. Please refer to the online help or documentation of the host application to determine how to enable macros

The error appears as the code is supposed to move from Excel to the Word file.

What I’ve tried so far:
Excel Trust Center:

  • The entire location (including subfolders are trusted).
  • «Allow documents on a network to be trusted» is checked.
  • Disable all macros with notification is «checked».
    I cannot change this as it is greyed out. However, this setting is the same for all users.
  • Protected view is disabled.

Word Trust Center

  • Protected view is disabled.
  • Opening the Word file doesn’t produce any «enable macros» notifications.

Community's user avatar

asked Apr 2, 2020 at 17:07

Carlsberg789's user avatar

6

The normal way to grey that out on purpose (maybe your users’ IT sets this through gpo?) is a registry key, where 16.0 is the version you have installed

[HKEY_CURRENT_USERSoftwareMicrosoftOffice16.0ExcelSecurity]
"VBAWarnings"=dword:00000001

Some other things to troubleshoot:

  • Can they create and run their own macro?
  • Can they run a different macro in a different document?
  • Does anyone have a different version of Excel?
  • Are the excel and word file both local to the user PC?
  • Do the users have Developer settings enabled?
  • Does anyone have different settings in Macro Settings > Developer Macro Settings?
  • Is Windows blocking the excel file? Right-click the file > properties > General:

blocked

There’s also this specific GPO that only blocks macros from the loosely-defined «Internet»

answered Apr 2, 2020 at 17:41

Cpt.Whale's user avatar

Cpt.WhaleCpt.Whale

4,7291 gold badge10 silver badges16 bronze badges

I had a similar issue some time ago. When opening a word document from within an Excel macro, everything worked fine for me. But on another PC, the macro simply stopped with a message indication that macros where disabled.

The issue could be solved by changing the Application.AutomationSecurity property for the word app to msoAutomationSecurityLow.

It is important to set that property back to its original value after code execution.

You can try the following code example.

Option Explicit

Sub OpenWordsFilePathWithLowSecuritySettings()
    Dim sFilePath As String
    Dim wrdApp As Object
    Dim wrdDoc As Object
    Dim lAutomationSetting As Long
    
    'The path to your word file
    sFilePath = "C:UsersmichaDesktopexample file.docx"

    Set wrdApp = CreateObject("Word.Application")
    
    wrdApp.Visible = True
    
    'Save word app automation security so we can restore it afterwards
    lAutomationSetting = wrdApp.AutomationSecurity
    'Error handling to make sure the automation security is reset even if an error occurs
    On Error GoTo ErrorHandler
    'Change the automation setting to low security
    wrdApp.AutomationSecurity = msoAutomationSecurityLow
    
    'Open word document
    Set wrdDoc = wrdApp.Documents.Open(sFilePath)
    
    'Your code - do something with the word file
    '
    '
    '
    
ErrorExit:
    On Error Resume Next
    'Close the word document
    wrdDoc.Close
    'Reset the word automation security
    wrdApp.AutomationSecurity = lAutomationSetting
    wrdApp.Quit
    Set wrdDoc = Nothing
    Set wrdApp = Nothing
    
    Exit Sub
    
ErrorHandler:
    MsgBox "An error occured: (Code: " & Err.Number & ", Description: " & Err.Description & ")", vbCritical, "Error"
    Resume ErrorExit
End Sub

answered Dec 5, 2020 at 19:33

Michael Wycisk's user avatar

Here’s a quick question we just got from a reader:

I have educated myself on the topic of  developing VBA macros for Outlook using your tutorials. Now, i would like to run my newly created macro and i get a message stating that “Macros in this project have been disabled and and i should be consulting Online help”. Any clue about what i am doing wrong here? For what it worth, i am using Outlook 2019 / 365.

Thanks for the question. Looks like you are having issues related to your Macro security settings. Read on for a fix.

Outlook Macros are disabled. How to fix?

Before we help you to allow your Outlook macros, let’s understand a few basics. Macros are snippets of Visual Basic Code that are embedded in your Microsoft Office application. Macros that we write in Outlook are stored in the VBAProject.otm file and its behavior and availability to the end users is governed by the Outlook Macro security settings.

The error message you got is simply due to the fact that your Microsoft Outlook Macro settings are set to disable Macros. The reason for that is that custom Macros could pose a potential threat to your computer hardware, security and contained data. That’s exactly the reason why you should never copy a macro from an unknown source.

Macros_project_disabled

Assuming that you have written your Macro on you own and feel comfortable running it on your PC, you should adjust the Macro security settings accordingly.

Enabling macro security settings in Outlook

To enable macros in Outlook, follow the steps below:

  1. Open Microsoft Outlook
  2. From the Ribbon, hit File.
  3. Hit Options.
  4. From the left Panel, hit Trust Center.
  5. Then hit the Trust Center Settings.
  6. Then Macro Settings.
  7. Now, go ahead and set your security level. Our recommendation is that is to use the following settings:
    • Version 365/2019: Use Disable All Macros with Notification or
    • Version 2016/2013: Use Notifications for only Digitally Signed…
  8. Once done, go ahead and hit OK.
  9. Next restart Outlook to ensure that your new security settings take effect.
  10. Your macros should now be running.

Troubleshoot Macro Security issues from the Developer Tab

If you already have the Outlook Developer tab enabled, the process is even more simple. Just as an FYI, the Developer Ribbon menu contains an integrated development environment to allows you to write your VBA macro code.  Let’s take a quick look on how to switch your Macro security settings from the Developer tab:

  1. First off, Let’s go ahead and launch Microsoft Outlook.
  2. From the Ribbon, Hit the Developer command.
  3. Now, go ahead and  hit the Macro Security button.
  4. Proceed as we described above.

Kindly post a comment in case of follow up questions on Outlook Macros. Happy coding 😉

Аник

1

Невозможно вставить текст (макросы отключены)

03.11.2010, 12:28. Показов 34492. Ответов 18


Студворк — интернет-сервис помощи студентам

Здравствуйте!У меня возникла следующая проблема.. При попытке вставить в один документ кусочек со второго элементарными «копировать- вставить» мне выдают вот такую каляку: The macros in this project are disabled.Please refer to the online help or dokumentation of the host application to determine how to enable macros. что делать???????Кучу раз переустанавливала офис,бесполезно.Сейчас стоит2007

290 / 175 / 3

Регистрация: 01.11.2009

Сообщений: 550

03.11.2010, 14:25

2

скорей всего в файле включены маркосы. попробуйте их отключить. или при вставке выбрать вариант только текст.

0

-17 / 15 / 0

Регистрация: 22.12.2009

Сообщений: 404

04.11.2010, 01:15

3

поддерживаю выше сказанное

0

Busine2009

Заблокирован

06.11.2010, 12:37

4

Аник,
не могу у себя создать такую ситуацию. Если можно, то вставьте фрагмент документа.

0

javvva

07.11.2010, 10:03

Не по теме:

Busine2009, судя по тому что автор молчит уже почти неделю ему это нах.. не нужно.

0

1 / 1 / 0

Регистрация: 08.11.2010

Сообщений: 4

08.11.2010, 20:01

6

Мне очень нужно!! Точно такая же бяка вылезает. Причем появилась вроде как после установки word 10. Удалил, установил 2007 — пишет точно также при попытке вставить текст из буфера обмена. Причем без разницы откуда текст взят, даже из самого ворда.
Пишет The macros in this project are disabled.Please refer to the online help or dokumentation of the host application to determine how to enable macros. Нажимаешь «окей» и ничего не происходит. Помогите, люди добрые, люди знающие!)

0

Почетный модератор

Эксперт по компьютерным сетямЭксперт Windows

28040 / 15773 / 982

Регистрация: 15.09.2009

Сообщений: 67,752

Записей в блоге: 78

08.11.2010, 20:20

7

Цитата
Сообщение от maarik
Посмотреть сообщение

Please refer to the online help or dokumentation of the host application to determine how to enable macros.

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

1

Busine2009

Заблокирован

08.11.2010, 20:30

8

maarik,
Сначала вот это:
Круглая кнопка — Параметры Word — Ресурсы — Центр диагностики Microsoft Office.
Если не поможет, то:
Пуск — Панель управления — Установка и удаление программ — Microsoft Office 2007 — Изменить — Восстановить.

Затем.
Смысла не понимаю, но чтобы этого не было, нужно сделать следующее:
Круглая кнопка — Параметры Word — Центр управлением безопасностью — Параметры центра управления безопасностью… — Включить все макросы (не рекомендуется, возможен запуск опасной программы) — Окей.

Добавлено через 7 минут

Цитата
Сообщение от magirus
Посмотреть сообщение

чтобы определить как включить макросы.

при чём здесь макросы?

1

Почетный модератор

Эксперт по компьютерным сетямЭксперт Windows

28040 / 15773 / 982

Регистрация: 15.09.2009

Сообщений: 67,752

Записей в блоге: 78

08.11.2010, 21:11

9

Цитата
Сообщение от Busine2009
Посмотреть сообщение

Включить все макросы

действительно при чем?….

1

Busine2009

Заблокирован

08.11.2010, 21:19

10

magirus,
логики никакой нет, но

The macros in this project are disabled

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

1

magirus

08.11.2010, 21:23

Не по теме:

Цитата
Сообщение от Busine2009
Посмотреть сообщение

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

а кто спорит? здесь «как включить макросы»=»как установить низкий уровень безопасности» не так ли?

1

1 / 1 / 0

Регистрация: 08.11.2010

Сообщений: 4

09.11.2010, 18:10

12

Всем спасибо!! Вы были правы, просто надо было в надстройках поставить нужную галочку.)

1

Busine2009

Заблокирован

09.11.2010, 20:24

13

в надстройках поставить нужную галочку.

что за галочку?
Нельзя оставлять безопасность в низком режиме.

Добавлено через 1 минуту

Цитата
Сообщение от maarik
Посмотреть сообщение

в надстройках

может быть в настройках?

0

1 / 1 / 0

Регистрация: 08.11.2010

Сообщений: 4

09.11.2010, 22:06

14

именно в надстройках(2007 версия). Почему нельзя?

0

Busine2009

Заблокирован

10.11.2010, 20:28

15

maarik,
ради интереса, напишите, что сделали. Просто здесь никто не предлагал лезть в «Надстройки».

0

5561 / 1367 / 150

Регистрация: 08.02.2009

Сообщений: 4,107

Записей в блоге: 30

10.11.2010, 23:10

16

Что у maarik, что у Аник сообщения «битые»:
dokumentation — такого слова просто не м. б. в хорошем ПО.

0

1 / 1 / 0

Регистрация: 08.11.2010

Сообщений: 4

15.11.2010, 19:53

17

Цитата
Сообщение от Busine2009
Посмотреть сообщение

maarik,
ради интереса, напишите, что сделали. Просто здесь никто не предлагал лезть в «Надстройки».

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

0

Busine2009

Заблокирован

15.11.2010, 20:14

18

maarik,
полностью напиши, что сделал, чтобы др. знали, что делать.

0

0 / 0 / 0

Регистрация: 23.10.2009

Сообщений: 58

20.08.2012, 12:28

19

Так, люди, у вас и у меня это сообщение. Но надо разобраться — относится ли оно к макросам. Кое у кого не влияет на это уровень безопасности, у кого-то — нет. Какие-то там «Word — Ресурсы — Центр диагностики M» — это, вообще что?

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

0

IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

20.08.2012, 12:28

19

Понравилась статья? Поделить с друзьями:
  • Ошибка the itunes store что делать
  • Ошибка the is not supported by the driver
  • Ошибка the ios sdk could not be founded
  • Ошибка the ios sdk could not be found
  • Ошибка the input in invalid