ПК
Некоторые пользователи Office сообщают об ошибке «Microsoft ожидает, пока другое приложение завершит действие OLE» при попытке запустить сценарий VBA или при запуске Excel с панели запуска. Сообщалось, что эта проблема возникает во всех последних версиях Windows, включая Windows 7, Windows 8.1 и Windows 10.
Что такое действие 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-разрядная версии
Если этот сценарий применим и вы не сильно полагаетесь на PDF Maker, вы, скорее всего, можете решить проблему, отключив или удалив надстройку Adobe Acrobat PDFMaker.
Вот краткое руководство о том, как это сделать:
- Откройте Microsoft Excel и щелкните на ленте Файл.
- В меню «Файл» выберите «Параметры» (внизу списка меню).
- В меню «Параметры Excel» выберите «Надстройки» в меню слева. Затем перейдите на правую панель, разверните раскрывающееся меню для управления и выберите Надстройки COM. Затем нажмите кнопку «Перейти…», чтобы открыть меню надстроек Com .
- В поле «Надстройки COM» снимите флажок, связанный с надстройкой COM Acrobat PDFMaker Office, или выберите ее и нажмите «Удалить», чтобы полностью удалить.
- Перезагрузите компьютер и повторите действия, которые ранее вызвали ошибку, после завершения следующей загрузки.
Если вы по-прежнему получаете сообщение об ошибке «Microsoft Excel ожидает, пока другое приложение завершит действие OLE», перейдите к следующему способу ниже.
Способ 2: разрешение приложений, которые используют DDE в настройках Excel
Как сообщают многие пользователи, проблема может возникнуть, если Microsoft Excel настроен на игнорирование любых приложений, которые пытаются взаимодействовать с Excel с помощью протокола динамического обмена данными (DDE) .
Например, предположим, что вы дважды щелкаете книгу Excel в проводнике Windows — как только команда регистрируется, динамический обмен данными (DDE) отправляется в Excel. Этот своп сообщает Excel, что нужно открыть книгу, которую вы только что дважды щелкнули.
Если Excel настроен на игнорирование приложений с динамическим протоколом связи, обмен завершится неудачно, и отобразится сообщение об ошибке «Microsoft Excel ожидает, пока другое приложение завершит действие OLE» .
К счастью, вы можете легко это исправить, открыв меню параметров Excel и включив протокол DDE. Вот краткое руководство о том, как это сделать:
- Откройте Microsoft Excel и щелкните Файл. Неважно, откроете ли вы новую книгу или новый документ.
- В меню «Файл» выберите «Параметры» на левой панели.
- В меню параметров Excel выберите вкладку «Дополнительно» в меню слева. Затем перейдите на правую панель и прокрутите вниз, пока не дойдете до общего раздела. Затем убедитесь, что флажок Игнорировать запросы DDE от других приложений снят.
- Нажмите ОК, чтобы сохранить изменения, затем перезапустите Microsoft Excel. Затем повторите операцию, которая ранее вызвала ошибку «Microsoft ожидает, пока другое приложение завершит действие OLE», и посмотрите, сохраняется ли проблема.
Если вы все еще сталкиваетесь с тем же сообщением об ошибке, перейдите к следующему способу ниже.
Способ 3: уничтожение процесса Internet Explorer (IE)
Ошибка «Microsoft ожидает, пока другое приложение завершит действие OLE» может возникнуть при попытке сохранить файл, поскольку процесс Internet Explorer может мешать динамическому обмену данными (DDE).
Пользователи в аналогичной ситуации сообщили, что проблема была решена после ручного завершения процесса IE. Вот краткое руководство о том, как это сделать:
- Нажмите Ctrl + Shift + Esc, чтобы открыть диспетчер задач .
- В диспетчере задач перейдите на вкладку «Процессы» и проверьте, активен ли в настоящее время процесс, принадлежащий Internet Explorer.
- Если вы видите такой процесс, щелкните его правой кнопкой мыши и выберите Завершить задачу, чтобы закрыть его
- Вернитесь в Excel и посмотрите, возникает ли ошибка «Microsoft ожидает, пока другое приложение завершит действие OLE», когда вы пытаетесь сохранить файл.
Если вы все еще сталкиваетесь с той же ошибкой, перейдите к следующему способу ниже.
Метод 4: Подавление обмена сообщениями Excel
Если вы получаете сообщение об ошибке при попытке запустить сценарий VBA, одним из решений может быть подавление обмена сообщениями приложения с помощью небольшого фрагмента кода.
Но имейте в виду, что это не решит саму проблему — это просто обходной путь, который предотвращает появление сообщения об ошибке. Вот краткое руководство по вставке кода VBA в книгу Excel, которая подавит обмен сообщениями приложений с помощью Excel:
- Откройте Excel и нажмите Alt + F11, чтобы открыть редактор Visual Basic (VBE) .
- На панели «Проект» (слева) щелкните правой кнопкой мыши «Эту книгу» и выберите «Вставить»> «Модуль» .
- Во вновь созданном модуле вставьте следующий код:
Объявление закрытой функции CoRegisterMessageFilter Lib «ole32» (ByVal IFilterIn As Long, ByRef PreviousFilter) As Long Public Sub KillMessageFilter () Dim IMsgFilter As Long CoRegisterMessageFilter 0 &, IMsgFilter End Subage Public SubMessageFilter
- Нажмите Ctrl + S и нажмите Нет, когда увидите предупреждение «Следующие функции не могут быть сохранены в книге без макросов» .
- Затем выберите подходящее место для редактируемой книги, дайте ей правильное имя и убедитесь, что книга Excel с поддержкой макросов выбрана в качестве типа «Сохранить как». Когда все будет в порядке, нажмите «Сохранить», чтобы создать книгу Excel с поддержкой макросов .
- Нажмите Alt + Q, чтобы закрыть редактор и вернуться к книге. Вернувшись в редактор, нажмите Alt + F8, выберите только что созданный макрос и нажмите «Выполнить».
После завершения этой процедуры вы больше не должны видеть ошибку «Microsoft Excel ожидает, пока другое приложение завершит действие OLE» с этой книгой (хотя это может все еще происходить в фоновом режиме).
Способ 5: отключить режим совместимости (если применимо)
Некоторым пользователям удалось исправить это, обнаружив, что исполняемый файл Excel работает в режиме совместимости. Это может произойти из-за ручного вмешательства пользователя или стороннего приложения.
Если вы подозреваете, что Excel работает в режиме совместимости, отключите его и проверьте, перестает ли появляться сообщение «Microsoft Excel ожидает, пока другое приложение завершит действие OLE». Обычно сообщение об ошибке появляется, если исполняемый файл Excel настроен для работы в режиме совместимости с Windows Vista и более ранними версиями.
Вот краткое руководство по отключению режима совместимости:
- Щелкните правой кнопкой мыши исполняемый файл Excel (или ярлык) и выберите «Свойства» .
- В окне «Свойства» перейдите на вкладку «Совместимость» и снимите флажок «Запускать эту программу в режиме совместимости».