Исправлено: Microsoft Excel ожидает другого приложения для завершения OLE-действия

Несколько пользователей Office сообщают об ошибке «Microsoft ожидает, пока другое приложение завершит действие OLE» при попытке запустить сценарий VBA или при запуске Excel из стартовой панели BI. Сообщается, что эта проблема возникает во всех последних версиях Windows, включая Windows 7, Windows 8.1 и Windows 10).

Microsoft Excel ожидает, пока другое приложение завершит действие OLE

Что такое действие OLE?

Действие «Связывание и внедрение объектов» (OLE) по сути представляет собой механизм, предназначенный для того, чтобы помочь различным приложениям Office (Word, Excel, Powerpoint, Sharepoint) взаимодействовать с другими приложениями для успешного завершения операции.

Что вызывает ошибку «Microsoft Excel ожидает, пока другое приложение завершит действие OLE»?

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

Если Excel отправляет запрос связи другому приложению (скажем, Word), он делает это с помощью объекта OLE, а затем ожидает ответа от приложения. Если ответ не приходит в заданное по умолчанию пороговое время, Excel выдаст конечному пользователю следующее предупреждение: «Microsoft Excel ожидает, пока другое приложение выполнит действие OLE».

Хотя сообщение об ошибке всегда одно и то же, на самом деле есть несколько довольно распространенных сценариев, которые вызывают эту конкретную ошибку в Microsoft Excel:

  • Протокол DDE отключен в Excel. Эта проблема может возникать из-за того, что протокол динамического обмена данными (DDE) отключен в настройках Excel.
  • Поврежденная установка Office. Некоторые затронутые пользователи сообщают, что проблема была решена после переустановки или восстановления всей установки Office.
  • Надстройка Adobe Acrobat PDFMaker конфликтует с Excel. Было несколько отчетов пользователей, которые смогли решить проблему, отключив или удалив плагин PDFMaker.
  • Процесс IE (Internet Explorer) мешает работе DDE. Обычно это происходит, когда пользователь пытается сохранить файл в Microsoft Excel. В этом случае решение состоит в том, чтобы закрыть процесс вручную.

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

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

Способ 1. Удаление Adobe Acrobat PDFMaker (если применимо)

Некоторым пользователям удалось устранить сообщение об ошибке, удалив надстройку Adobe Acrobat PDF Maker. Как оказалось, этот плагин может конфликтовать с определенными версиями Microsoft Excel.

Вот список версий Office, совместимых с PDF Maker:

  • Office 2010 (Office 14) 32-разрядный и 64-разрядный
  • Office 2013 (Office 15) 32-разрядный и 64-разрядный
  • Office 2016 (Office 16) 32-разрядная и 64-разрядная версии

Примечание. Вы можете ознакомиться с полным руководством по совместимости Adobe ( здесь ).

Если этот сценарий применим, и вы не сильно полагаетесь на PDF Maker, вы, скорее всего, сможете решить проблему, отключив или удалив надстройку Adobe Acrobat PDFMaker.

Вот краткое руководство о том, как это сделать:

Обновление: Вы также можете использовать это исправление (здесь) для автоматического отключения надстройки PDFMaker. Он совместим со всеми последними версиями Windows, включая Windows 10, Windows 8.1, Windows 7 и Windows Vista.

  1. Откройте Microsoft Excel и нажмите « Файл» на ленточной панели.

    Откройте Microsoft Excel и перейдите к файлу
  2. В меню «Файл» выберите « Параметры» (внизу списка меню).

    Перейдите в Файл> Параметры
  3. В меню параметров Excel выберите « Надстройки» в левом меню. Затем перейдите к правой панели, разверните раскрывающееся меню, связанное с управлением, и выберите Надстройки COM . Затем нажмите кнопку « Перейти…», чтобы открыть меню надстроек Com .

    Перейдите в «Надстройки», выберите «Надстройки COM» в раскрывающемся меню и нажмите «Перейти».
  4. В поле Надстройки COM снимите флажок, связанный с надстройкой Acrobat PDFMaker Office COM, или выберите его и нажмите «Удалить», чтобы полностью удалить его.
  5. Перезагрузите компьютер и заново выполните шаги, которые ранее вызывали ошибку, после завершения следующего запуска.

Если вы все еще сталкиваетесь с ошибкой «Microsoft Excel ожидает, пока другое приложение завершит действие OLE», перейдите к следующему способу ниже.

Способ 2: разрешение приложений, которые используют DDE в настройках Excel

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

Например, допустим, вы дважды щелкнули книгу Excel в проводнике Windows - как только команда зарегистрируется, динамический обмен данными (DDE) будет отправлен в Excel. Этот обмен инструктирует Excel открыть книгу, которую вы только что дважды щелкнули.

Если Excel настроен на игнорирование приложений, использующих протокол динамического обмена данными, обмен не произойдет, и вы увидите сообщение об ошибке «Microsoft Excel ожидает, пока другое приложение завершит действие OLE» .

К счастью, вы можете легко устранить эту проблему, открыв меню параметров Excel и включив протокол DDE. Вот краткое руководство о том, как это сделать:

  1. Откройте Microsoft Excel и нажмите « Файл» . Не имеет значения, открываете ли вы новую рабочую книгу или новый документ.

    Откройте Microsoft Excel и перейдите к файлу
  2. В меню « Файл» выберите « Параметры» на левой панели.

    Перейдите в Файл> Параметры
  3. В меню параметров Excel выберите вкладку « Дополнительно » в левом меню. Затем перейдите на правую панель и прокрутите вниз, пока не дойдете до общего раздела. После этого убедитесь, что флажок, связанный с Игнорировать другие приложения, использующие динамический обмен данными (DDE), не отмечен.

    Включение протокола DDE в Excel
  4. Нажмите Ok, чтобы сохранить изменения, затем перезапустите Microsoft Excel. Затем повторите операцию, которая ранее вызывала ошибку «Microsoft ожидает, пока другое приложение завершит действие OLE», и посмотрите, сохраняется ли проблема.

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

Способ 3: уничтожение процесса Internet Explorer (IE)

Несколько пользователей, видя ошибку «Microsoft ждет, пока другое приложение завершит действие OLE» при попытке сохранить файл, могут видеть ошибку, потому что процесс IE мешает обмену динамическим обменом данными (DDE) .

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

  1. Нажмите Ctrl + Shift + Esc, чтобы открыть диспетчер задач .
  2. В диспетчере задач перейдите на вкладку Процессы и посмотрите, есть ли у вас какой-либо процесс, принадлежащий Internet Explorer, который в данный момент активен.
  3. Если вы видите один открытый, просто щелкните правой кнопкой мыши на нем и выберите Завершить задачу, чтобы закрыть его.

    Закрытие процесса Internet Explorer (IE)
  4. Вернитесь в Excel и убедитесь, что при попытке сохранить файл по-прежнему возникает ошибка «Microsoft ожидает, пока другое приложение завершит действие OLE» .

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

Метод 4: Подавление обмена сообщениями приложения Excel

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

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

Вот краткое руководство по вставке кода VBA в Excel Workbook, которое подавит обмен сообщениями приложений Excel:

  1. Откройте книгу в Excel и нажмите Alt + F11, чтобы открыть редактор Visual Basic (VBE) .
  2. На панели « Проект» (слева) щелкните правой кнопкой мыши ThisWorkbook и выберите « Вставка»> «Модуль» .

    Щелкните правой кнопкой мыши ThisWorkbook и выберите «Вставка»> «Модуль».
  3. Во вновь созданном модуле вставьте следующий код (в правой части экрана):
     Закрытое Объявление функции CoRegisterMessageFilter Lib "ole32" (ByVal IFilterIn As Long, ByRef PreviousFilter) В качестве Long Public Sub KillMessageFilter () Dim IMsgFilter As Long CoRegisterMessageFilter 0 &, IMsgFilter Конечная подпрограмма IMB ResourceMilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilterFilter () 

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

     Sub CreateXYZ () Dim wdApp As Object Dim wd As Object On Error Возобновить следующее Установить wdApp = GetObject (, "Word.Application") Если Err.Number 0, то установить wdApp = CreateObject ("Word.Application") End On при ошибке GoTo 0 Установите wd = wdApp.Documents.Open (ThisWorkbook.Path & Application.PathSeparator & "XYZ template.docm") wdApp.Visible = True Range ("A1: B10"). CopyPicture xlScreen wd.Range.Paste End Sub 
  4. Нажмите Ctrl + S и нажмите « Нет», когда увидите предупреждение «Следующие функции не могут быть сохранены в книге без макросов» .

    Нажмите Нет в окне с предупреждением
  5. Затем выберите подходящее место для измененной рабочей книги, задайте правильное имя и убедитесь, что в качестве типа « Сохранить как» выбран Excel Macro-Enabled Workbook. Когда все будет в порядке, нажмите « Сохранить», чтобы создать книгу Excel с поддержкой макросов .

    Создание книги Excel с поддержкой макросов
  6. Нажмите Alt + Q, чтобы закрыть редактор и вернуться к своей книге. Вернувшись в редактор, нажмите Alt + F8, выберите только что созданный макрос и нажмите « Выполнить» .

После завершения этой процедуры вы больше не должны видеть ошибку «Microsoft Excel ждет другого приложения для завершения действия OLE» с этой рабочей книгой (даже если она все еще может возникать в фоновом режиме).

Метод 5: Отключить режим совместимости (если применимо)

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

Если вы подозреваете, что Excel работает в режиме совместимости, отключите его и посмотрите, перестает ли появляться сообщение об ошибке «Microsoft Excel ожидает, пока другое приложение завершит действие OLE» . Как правило, сообщение об ошибке возникает, если исполняемый файл Excel настроен для работы в режиме совместимости с Windows Vista и более ранними версиями.

Вот краткое руководство по отключению режима совместимости:

  1. Щелкните правой кнопкой мыши исполняемый файл Excel (или ярлык) и выберите « Свойства» .

    Щелкните правой кнопкой мыши исполняемый файл Excel и выберите «Свойства».
  2. В окне « Свойства» перейдите на вкладку « Совместимость » и снимите флажок, связанный с « Запустить эту программу в режиме совместимости» .

    Снимите флажок Запустить эту программу в режиме совместимости

Интересные статьи