Почему не работает activex в excel
Office 365 ProPlus переименован в Майкрософт 365 корпоративные приложения. Для получения дополнительной информации об этом изменении прочитайте этот блог.
Сведения, которые пользователь должен заметить, даже если в этой статье skimmingImportant содержатся сведения, которые показывают, как уменьшить параметры безопасности или отключить функции безопасности на компьютере. Эти изменения можно выполнить для работы с определенной проблемой. Перед внесением этих изменений рекомендуется оценить риски, связанные с реализацией этого обходного решения в вашей среде. Если вы реализуете этот обход, примите соответствующие дополнительные меры для защиты компьютера.
Симптомы
Причина
Эта проблема возникает из-за того, что некоторые элементы управления, которые можно скриптами, устарели Office 2013 г. по соображениям безопасности. Это по проекту, и эти ошибки ожидаются. Эти элементы управления, которые можно использовать для скриптов, отключены с помощью определенного для версии бита, который применяется только к этим средствам управления, и это происходит только тогда, когда они используются в документе. Рекомендуется не пытаться встраить элементы управления скриптами непосредственно в документы, так как такое поведение может снизить безопасность системы.
Обходной путь
Обход warningThis может сделать компьютер или сеть более уязвимыми для атак вредоносных пользователей или вредоносных программ, таких как вирусы. Мы не рекомендуем это обходное решение, но предоставляем эту информацию, чтобы вы могли реализовать это обходное решение по своему усмотрению. Ответственность за использование этого обходного пути несет пользователь. Если вы реализуете этот обходной путь, настоятельно рекомендуется выполнить это только для элементов управления, которые необходимо использовать.
Чтобы решить эту проблему, отключайте 32-битные биты с помощью просмотра в следующих реестрах, а затем измените значение DWORD для применимого ClassID с 1024 до 0.
Для установки click-to-Run Office 2013 г. найдите следующий подки реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\Microsoft\Office\15.0\Common\COM Compatibility\<ClassID>
Для установки MSI Office 2013 г. найдите следующий подкай реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\15.0\Common\COM Compatibility\<ClassID>
Примечание Чтобы определить версию установки Office 2013 г., выполните следующие действия:
- Запустите приложение Office 2013 года, например Word 2013.
- В меню File щелкните Учетную запись.
- Если Office 2013 был установлен с помощью click-to-Run, отображается элемент "Параметры обновления". Для установки MSI элемент "Параметры обновления" не отображается.
На следующие classID-решения влияет эта проблема:
Описание | ClassID |
---|---|
Управление веб-браузером | |
Компонент скриптлета Майкрософт | |
Управление редактированием HTML | |
Управление редактированием MHTML | |
Управление редактированием DHTML | |
Управление редактированием DHTML (Сейф для скриптов) |
Wow6432Node должен быть опущен из ключей реестра для Office случаев, когда 32-битная версия Office работает в 32-битной версии Windows или 64-битная версия Office работает на 64-битной версии Windows. Однако, Wow6432Node следует включить, когда 32-битная версия Office работает на 64-битной версии Windows.
ИТ-специалисты могут найти дополнительные сведения о планировании элементов ActiveX в статье TechNet Планирование параметров безопасности для элементов управления ActiveX в приложениях Office 2010.
В этой статье
Включение элементов ActiveX в представлении Backstage
Откройте вкладку Файл.
В области Предупреждение системы безопасности нажмите кнопку Включить содержимое.
В разделе Включить все содержимое выберите команду Всегда включать активное содержимое данного документа.
Файл станет надежным документом.
На приведенном ниже рисунке показаны команды Всегда включать активное содержимое этого документа и Дополнительные параметры.
На приведенном ниже рисунке показаны команды группы Включить содержимое.
Примечание: Исключение составляют элементы ActiveX с флагом блокировки. Такие элементы ActiveX не запускаются. Флаг блокировки — это функция безопасности, которая запрещает элементу ActiveX использовать код ActiveX, например устраняя уязвимость в системе безопасности или предотвращая запуск кода.
Включение элементов ActiveX на один раз при появлении предупреждения системы безопасности
Выполнив приведенные ниже инструкции, можно включить элементы управления на то время, пока открыт файл. Если закрыть файл и открыть его снова, предупреждение появится опять.
Откройте вкладку Файл.
В области Предупреждение системы безопасности нажмите кнопку Включить содержимое.
Выберите элемент Дополнительные параметры .
В диалоговом окне Параметры безопасности Microsoft Office выберите команду Включить содержимое для этого сеанса для каждого элемента ActiveX.
На приведенном ниже рисунке показана область Предупреждения системы безопасности, если элементы ActiveX можно включить на то время, пока открыт файл.
Если файл содержит проект Visual Basic для приложений (VBA), например файл Microsoft Excel с поддержкой макросов, центр управления безопасностью налагает более жесткие ограничения, поскольку такой файл может содержать макросы.
Элементы ActiveX и другой активный контент следует включать только в том случае, если точно известно, что они получены из надежного источника.
Изменение параметров элементов ActiveX в Word, Access, Excel, PowerPoint, Publisher и Visio
Выполнив приведенные ниже инструкции, можно включить или отключить элементы ActiveX в центре управления безопасностью.
Выберите Файл > Параметры.
Выберите по очереди пункты Центр управления безопасностью, Параметры центра управления безопасностью и Параметры ActiveX.
Выберите нужные параметры и нажмите кнопку ОК.
Далее показан пример области Параметры ActiveX центра управления безопасностью.
Важно: При изменении параметра ActiveX в Word, Access, Excel, PowerPoint, Publisher или Visio аналогичные параметры изменяются и во всех остальных программах из этого списка.
Описание параметров элементов ActiveX
Приведенные ниже объяснения относятся к элементам ActiveX, которые не находятся в надежном расположении или надежных документах.
Важно: Если документ является надежным и предупреждения безопасности о наличии элементов ActiveX или другого активного содержимого получать нежелательно, поместите этот документ в надежное расположение.
Отключить все элементы управления без уведомления. В документах будут отключены все элементы ActiveX.
Запрос перед включением элементов управления, инициализация которых считается небезопасной (UFI), с дополнительными ограничениями и элементов управления, инициализация которых считается безопасной (SFI), с минимальными ограничениями. Здесь возможны два варианта в зависимости от наличия проектов VBA projects.
Запрос перед включением всех элементов управления с минимальными ограничениями. Этот параметр установлен по умолчанию. Здесь возможны два варианта в зависимости от наличия проектов VBA.
Включить все элементы управления без ограничений и запросов (не рекомендуется). Все элементы ActiveX в документах включаются с минимальными ограничениями.
Сейф режиме В ActiveX SFI можно включить элементы управления в безопасном режиме, то есть разработчик пометил их как безопасные.
Что представляет собой элемент ActiveX и какие риски с ним связаны
Элементы ActiveX — это небольшие стандартные блоки, используемые для создания приложений, работающих через Интернет в веб-браузере. Примерами могут служить пользовательские приложения для сбора данных, просмотра файлов определенных типов и показа анимации. Обычно элементы ActiveX используются в кнопках, списках и диалоговых окнах. В программах Office также можно использовать элементы ActiveX для расширения функциональности документов.
Риск и возможные последствия
Элементы ActiveX могут иметь неограниченный доступ к компьютеру и, следовательно, могут получить доступ к локальной файловой системе и изменить параметры реестра операционной системы. Если злоумышленник воспользуется элементом ActiveX, чтобы управлять компьютером, нежелательные последствия могут быть весьма серьезными.
Средство проверки совместимости обнаружило одну или несколько проблем совместимости, связанных с рисунками, объектами или элементами управления ActiveX.
Важно: Прежде чем продолжить сохранение книги в формате файла более ранней версии, необходимо устранить проблемы, которые приводят к существенной потере функциональности, чтобы предотвратить безвозвратную потерю данных или неправильную работу функций.
Проблемы, которые приводят к небольшой потере точности, не всегда обязательно устранять перед сохранением: данные и функциональность не теряются, но книга при ее открытии в более ранней версии Microsoft Excel может выглядеть или работать несколько иначе.
В этой статье
Проблемы, которые приводят к существенной потере функциональности
Примененные к этому объекту эффекты будут удалены. Текст, находящийся в границах рисунка, будет выглядеть обрезанным.
Что это означает. В Excel 2007 и более поздних гг. можно использовать специальные эффекты, например прозрачные тени, которые не поддерживаются в Excel 97–2003. Эти эффекты будут удалены.
Кроме того, Excel 2007 и более поздних, при вставке текста в фигуру, которая шире фигуры, текст отображается за границами фигуры. В Excel 97–2003 текст обрезается. Чтобы предотвратить обрезку текста, можно скорректировать размеры фигуры по длине текста.
Что необходимо сделать. В средстве проверки совместимости нажмите кнопку Найти, чтобы найти объекты с примененными эффектами оформления и удалить эти эффекты при необходимости.
Объект станет нередактируемым.
Что это означает. Внедренные объекты, созданные в Excel 2007 и более поздних Excel 97–2003, нельзя редактировать.
Что необходимо сделать. В средстве проверки совместимости нажмите кнопку Найти, чтобы найти объекты, содержащие текст, который нельзя будет изменить, и внесите необходимые изменения.
Неинициализированные элементы управления ActiveX невозможно сохранить в файле указанного формата. В случае продолжения эти элементы управления будут потеряны.
Что это означает. Если книга содержит элементы управления ActiveX, инициализация которых считается небезопасной, при сохранении книги в файле формата более ранней версии Excel они будут потеряны. Может потребоваться пометить эти элементы управления как безопасные для инициализации.
Один или несколько объектов книги, например фигуры, объекты WordArt или текстовые поля, допускают обтекание текстом границ объекта. Более ранним версиям Excel эта возможность неизвестна, поэтому текст, обтекающий границы, будет скрыт.
Что это означает. В Excel 2010 и более поздних можно отображать текстовые поля на объектах (например, фигурах) и отображать текст за границами этих объектов. В Excel 97–2007 г. текст, который переполает границы объекта, не будет виден.
Действия В средстве проверки совместимости нажмите кнопку Найти, чтобы найти текстовое поле, содержаное текст, который обтекал границы фигуры, внести необходимые изменения, чтобы текст не был за границами, а затем отключите параметр переполнения текста (щелкните правой кнопкой мыши фигуру или текстовое поле, выберите формат фигуры ,выберите категорию Параметры текста, нажмите кнопку Текстовое поле и выберите параметр Разрешить обтека фигуры текстом).
Проблемы, которые приводят к небольшой потере точности
Книга содержит текстовые поля с форматированием текста, недоступным в более ранних версиях Excel. Поэтому в более ранних версиях Excel текст в таких полях будет отображаться иначе.
Что это означает. В Excel 2007 г. и более поздних к объектам (например, фигурам) можно использовать текстовое поле, отображаее несколько столбцов текста. В Excel 97–2003 текст будет отображаться, но в другом формате.
Что необходимо сделать. В средстве проверки совместимости нажмите Найти, чтобы найти текстовое поле, содержащее более одной колонки текста, и внесите необходимые изменения, чтобы текст отображался только в одной колонке (щелкните правой кнопкой мыши фигуру, выберите команду Формат фигуры, щелкните категорию Параметры текста и нажмите кнопку Надпись, а затем — Колонки).
Предупреждение: все описанные ниже действия вы выполняете на свой страх и риск и автор статьи не несет никакой ответственности за потерю каких-либо данных(в том числе форматов) вследствие неосторожного использования инструкции, а так же за какой-либо ущерб, включая все без исключения случаи упущенной выгоды или потери данных, либо других денежных потерь, ставших результатом использования или невозможности использования инструкции, даже если автор был заранее поставлен в известность о возможности подобного рода ущерба.
- Закрыть Excel (желательно вообще все окна и приложения)
- Нажать одновременно клавишу Windows и R (или нажать на панели задач кнопку ПУСК и выбрать команду Выполнить . В Windows 7 и выше она может отсутствовать и её необходимо будет отобразить через настройку меню Пуск)
- Ввести в поле команду: %APPDATA%\Microsoft\Forms и нажать Enter
В XP обычно это папка:
C:\Documents and Settings\%USERNAME%\Application Data\Microsoft\Forms\
В Win7:
C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Forms\ - В открывшейся папке удалить все файлы с расширением EXD
- Так же не помешает удалить файлы с расширением EXD из временных папок Excel и VBE: %Temp%\Excel8.0\ , %Temp%\VBE\ , %USERPROFILE%\Local Settings\Temp\ , %USERPROFILE%\Local Settings\Temp\Excel8.0\ , %SystemRoot%\Temp\VBE\ , %SystemRoot%\Temp\Excel8.0\
Если каких-то папок нет или в них нет файлов EXD - значит все хорошо и там ничего критичного нет.
fixMS_Hay.zip (423 bytes, 6 040 скачиваний)
Само содержание BAT-ника выглядит так:
@echo off del "%APPDATA%\Microsoft\Forms\*.exd" del "%APPDATA%\Microsoft\Excel\*.xlb" del "%APPDATA%\Roaming\Microsoft\Forms\*.exd" del "%Temp%\VBE\*.exd" del "%Temp%\Excel8.0\*.exd" del "%APPDATA%\Microsoft\Local\*.exd" del "%USERPROFILE%\Local Settings\Temp\*.exd" del "%USERPROFILE%\Local Settings\Temp\VBE\*.exd" del "%USERPROFILE%\Local Settings\Temp\Excel8.0\*.exd" del "%SystemRoot%\Temp\VBE\*.exd" del "%SystemRoot%\Temp\Excel8.0\*.exd"
Если использовали Способ1 или Способ2 , то для верности необходимо запустить файл с проектом VBA, открыть код(Alt+F11) и внести в код любые изменения (можно просто добавить или изменить любой комментарий), после чего скомпилировать проект в ручном режиме из меню: Debug=>Compile VBAProject. Сохранить файл. Попробовать работу ActiveX, в том числе на других ПК.СПОСОБ 3
Самый верный способ для тех, кому нечего терять :-) Переустановка Windows. Можно еще попробовать сделать откат обновлений, но как показала практика откат не далеко не всегда решает проблему. Переустановка офиса помогает еще реже, судя по отзывам тех, кто столкнулся с проблемой. Т.е. переустановка может помочь, а может и нет. Как поступить в этом случае решайте сами.
СПОСОБ 4
Вспомнить в какой момент это все началось и проверить обновления офиса и безопасности за этот период от Microsoft. Если таковые были - перейти на страницу обновлений, изучить что в них вошло. И терпеливо ждать исправления проблемы от Microsoft.
И напоследок - элементы ActiveX сами по себе считаются устаревшими и я бы не рекомендовал их использовать без крайней необходимости, во избежание ситуаций, описанных в этой статье. Для запуска макроса кнопкой есть и другие методы, более стабильные.
Читайте также: