Виправлення: 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.

Ось короткий посібник, як це зробити:

Оновлення: Ви також можете скористатися цим Fix-it (тут), щоб автоматично відключити надбудову PDFMaker. Він сумісний із усіма останніми версіями Windows, включаючи Windows 10, Windows 8.1, Windows 7 та Windows Vista.

  1. Відкрийте Microsoft Excel і натисніть на Файл за допомогою панелі стрічки.

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

    Перейдіть у меню Файл> Параметри
  3. У меню Параметри Excel натисніть на Надбудови, використовуючи меню зліва. Далі перейдіть до правої панелі, розгорніть спадне меню, пов’язане з керуванням, та виберіть COM надбудови . Потім натисніть кнопку Go…, щоб запустити меню Com-надбудов .

    Перейдіть до Надбудови, виберіть COM надбудови у спадному меню та натисніть кнопку Перейти
  4. У полі надбудови COM зніміть прапорець, пов’язаний з Acrobat PDFMaker Office COM Addin, або виберіть його та натисніть Видалити, щоб повністю його видалити.
  5. Перезавантажте комп'ютер і відтворіть кроки, які раніше створювали помилку, коли буде завершено наступний запуск.

Якщо ви все ще стикаєтеся з тим, що "Microsoft Excel чекає, коли інша програма завершить дію OLE", перейдіть до наступного методу нижче.

Спосіб 2: Дозвіл програм, які використовують DDE у налаштуваннях Excel

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

Наприклад, скажімо, що ви двічі клацніть по робочій книжці Excel в Провіднику Windows - як тільки команда реєструється, в Excel надсилається динамічний обмін даними (DDE). Цей обмін дасть вказівку Excel відкрити робочу книжку, яку ви лише двічі клацнули.

Якщо Excel налаштований ігнорувати додатки, що використовують протокол обміну даними Dynamic Data, обмін не відбудеться, і ви побачите повідомлення про помилку "Microsoft Excel чекає на іншу програму, щоб виконати дію OLE" .

На щастя, ви можете легко виправити цю проблему, відвідавши меню Параметри Excel та включивши протокол DDE. Ось короткий посібник, як це зробити:

  1. Відкрийте Microsoft Excel і натисніть на Файл . Не має значення, відкриваєте ви нову робочу книжку чи новий документ.

    Відкрийте Microsoft Excel та перейдіть до Файл
  2. У меню " Файл" натисніть " Параметри" на лівій панелі.

    Перейдіть у меню Файл> Параметри
  3. У меню Параметри Excel натисніть на вкладку Додатково з меню ліворуч. Потім перейдіть до правої панелі та прокрутіть вниз, поки не досягнете розділу Загальні . Після того, як ви потрапите туди, переконайтесь, що прапорець, пов'язаний з Ігнорувати інші додатки, що використовують динамічний обмін даними (DDE), не встановлений.

    Увімкнення протоколу DDE в Excel
  4. Клацніть ОК, щоб зберегти зміни, а потім перезапустіть 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 для видання Workbook, який пригнічує обмін повідомленнями програми excel:

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

    Клацніть правою кнопкою миші на ThisWorkbook і виберіть Вставити> Модуль
  3. В новостворений модуль вставте наступний код (у правій частині екрана):
     Приватна декларувати функцію CoRegisterMessageFilter Lib "ole32" (ByVal IFilterIn As Long, ByRef PreviousFilter) Як довгий загальний підрозділ KillMessageFilter () Dim IMsgFilter As Long CoRegisterMessageFilter 0 &, IMsgFilter End Sub Public Sub RestoreMessageFilterFilterFilterFilterFilterFilterFilterFilterFilterFesterFilter 

    Оновлення: Інші користувачі повідомили, що їм вдалося запобігти появі запиту про помилку, використовуючи такий код VBA:

     Sub CreateXYZ () Dim wdApp як об'єкт Dim wd як об'єкт помилки Відновлення Наступне Встановити wdApp = GetObject (, "Word.Application") Якщо Err.Number 0, то встановіть wdApp = CreateObject ("Word.Application") End If On Error GoTo 0 Встановити wd = wdApp.Documents.Open (ThisWorkbook.Path & Application.PathSeparator & "XYZ template.docm") wdApp.Visible = Дійсний діапазон ("A1: B10"). CopyPicture xlScreen wd.Range.Paste End Sub 
  4. Натисніть Ctrl + S і натисніть " Ні", коли з'явиться попередження "Наступні функції не можна зберегти в робочій книжці без макросу" .

    Натисніть "Ні" у запиті попередження
  5. Потім виберіть відповідне місце для зміненої робочої книги, встановіть власне ім’я та переконайтесь, що для типу "Зберегти як" встановлено функцію Excel Macro-Enabled Workbook. Після того, як все в порядку, натисніть кнопку " Зберегти", щоб створити робочу книжку Excel Macro-Enabled .

    Створення робочої книги з підтримкою макросів Excel
  6. Натисніть Alt + Q, щоб закрити редактор і повернутися до робочої книги. Після повернення в редактор натисніть Alt + F8, виберіть створений вами макрос і натисніть кнопку Виконати .

Після завершення цієї процедури вам більше не слід побачити помилку "Microsoft Excel чекає, коли інша програма завершить дію OLE" із цією робочою книжкою (хоча вона все ще може виникати у фоновому режимі).

Спосіб 5: Вимкнути режим сумісності (якщо застосовується)

Деяким користувачам вдалося вирішити проблему, виявивши, що виконуваний файл Excel працює в режимі сумісності . Це може статися через ручне втручання користувача або сторонній додаток.

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

Ось короткий посібник щодо відключення режиму сумісності:

  1. Клацніть правою кнопкою миші виконуваний файл (або ярлик) та виберіть Властивості .

    Клацніть правою кнопкою миші на виконуваний файл Excel та виберіть Властивості
  2. У вікні " Властивості" перейдіть на вкладку " Сумісність" і зніміть прапорець " Запустити цю програму" в режимі сумісності .

    Зніміть прапорець Запустити цю програму в режимі сумісності

Цікаві Статті