Khắc phục: Microsoft Excel đang đợi một ứng dụng khác hoàn thành một hành động OLE

Một số người dùng Office báo cáo nhận được lỗi “Microsoft đang đợi một ứng dụng khác hoàn thành tác vụ OLE” khi cố gắng chạy tập lệnh VBA hoặc khi cố chạy Excel từ bảng khởi chạy BI. Sự cố được báo cáo là xảy ra trên tất cả các phiên bản Windows gần đây bao gồm Windows 7, Windows 8.1 và Windows 10)

Microsoft Excel đang đợi một ứng dụng khác hoàn thành một hành động OLE

Hành động OLE là gì?

Hành động Liên kết & Nhúng đối tượng (OLE) về cơ bản là một cơ chế được thiết kế để giúp các ứng dụng Office khác nhau (Word, Excel, Powerpoint, Sharepoint) giao tiếp với các ứng dụng khác để hoàn thành một thao tác thành công.

Điều gì đang gây ra lỗi 'Microsoft Excel đang đợi một ứng dụng khác hoàn thành tác vụ OLE'?

Chúng tôi đã điều tra vấn đề cụ thể này bằng cách xem các báo cáo người dùng khác nhau và xem tài liệu chính thức của Microsoft. Chúng tôi thậm chí đã cố gắng tái tạo vấn đề trên một trong các máy thử nghiệm của mình.

Nếu Excel đưa ra một yêu cầu giao tiếp đến một ứng dụng khác (giả sử Word), nó sẽ thực hiện nó bằng cách sử dụng đối tượng OLE và sau đó chờ phản hồi từ ứng dụng. Nếu phản hồi không đến ngưỡng thời gian mặc định, Excel sẽ kích hoạt cảnh báo sau cho người dùng cuối: 'Microsoft Excel đang đợi một ứng dụng khác hoàn thành hành động OLE'

Mặc dù thông báo lỗi luôn giống nhau, nhưng thực tế có một vài trường hợp khá phổ biến sẽ kích hoạt lỗi cụ thể này trong Microsoft Excel:

  • Giao thức DDE bị tắt khỏi Excel - Sự cố này có thể xảy ra do giao thức Trao đổi dữ liệu động (DDE) bị tắt từ cài đặt của Excel.
  • Cài đặt Office bị lỗi - Một số người dùng bị ảnh hưởng đã báo cáo rằng sự cố đã được giải quyết sau khi họ cài đặt lại hoặc sửa chữa toàn bộ cài đặt Office.
  • Phần bổ trợ Adobe Acrobat PDFMaker đang xung đột với Excel - Đã có nhiều báo cáo về người dùng có thể giải quyết sự cố bằng cách tắt hoặc gỡ cài đặt plugin PDFMaker.
  • Quá trình IE (Internet Explorer) đang can thiệp vào DDE - Điều này thường được báo cáo là xảy ra khi người dùng cố gắng lưu tệp trong Microsoft Excel. Trong trường hợp này, giải pháp là đóng quy trình theo cách thủ công.

Nếu bạn hiện đang gặp khó khăn trong việc giải quyết thông báo lỗi cụ thể này, thì bài viết này sẽ cung cấp cho bạn lựa chọn các bước khắc phục sự cố. Bên dưới, bạn có một số phương pháp mà những người dùng khác trong tình huống tương tự đã sử dụng thành công để khắc phục sự cố.

Để có kết quả tốt nhất, hãy làm theo các phương pháp bên dưới để cho đến khi bạn gặp phải bản sửa lỗi có hiệu quả trong việc giải quyết sự cố. Hãy bắt đầu nào

Phương pháp 1: Gỡ cài đặt Adobe Acrobat PDFMaker (nếu có)

Một số người dùng đã quản lý để giải quyết thông báo lỗi bằng cách gỡ cài đặt phần bổ trợ Adobe Acrobat PDF Maker. Hóa ra, plugin này có khả năng xung đột với một số phiên bản Microsoft Excel.

Dưới đây là danh sách các phiên bản Office tương thích với PDF Maker:

  • Office 2010 (Office 14) 32 bit và 64 bit
  • Office 2013 (Office 15) 32 bit và 64 bit
  • Office 2016 (Office 16) 32 bit và 64 bit

Lưu ý: Bạn có thể tham khảo hướng dẫn tương thích đầy đủ của Adobe ( tại đây ).

Nếu trường hợp này có thể áp dụng được và bạn không phụ thuộc nhiều vào PDF Maker, rất có thể bạn có thể giải quyết vấn đề bằng cách tắt hoặc gỡ cài đặt phần bổ trợ Adobe Acrobat PDFMaker.

Dưới đây là hướng dẫn nhanh về cách thực hiện việc này:

Cập nhật: Bạn cũng có thể sử dụng Khắc phục sự cố này (tại đây) để tự động tắt bổ trợ PDFMaker một cách tự động. Nó tương thích với mọi phiên bản Windows gần đây bao gồm Windows 10, Windows 8.1, Windows 7 và Windows Vista.

  1. Mở Microsoft Excel và nhấp vào Tệp bằng thanh ribbon.Mở Microsoft Excel và đi tới Tệp
  2. Từ menu Tệp, bấm vào Tùy chọn (ở cuối danh sách menu).Đi tới Tệp> Tùy chọn
  3. Trong menu Tùy chọn Excel, bấm vào Bổ trợ bằng menu bên trái. Tiếp theo, chuyển sang ngăn bên tay phải, mở rộng menu thả xuống được liên kết với Quản lý và chọn Phần bổ trợ COM . Sau đó, nhấp vào nút Go… để khởi chạy menu Com Add-in .Đi tới Phần bổ trợ, chọn Phần bổ trợ COM từ trình đơn thả xuống và nhấp vào Bắt đầu
  4. Trong hộp Phần bổ trợ COM, bỏ chọn hộp được liên kết với Phần bổ trợ COM của Acrobat PDFMaker Office hoặc chọn phần bổ trợ đó và nhấp vào Loại bỏ để xóa hoàn toàn.
  5. Khởi động lại máy tính của bạn và tạo lại các bước trước đó đã tạo ra lỗi sau khi khởi động tiếp theo hoàn tất.

Nếu bạn vẫn gặp phải lỗi 'Microsoft Excel đang đợi ứng dụng khác hoàn thành tác vụ OLE' , hãy chuyển xuống phương pháp tiếp theo bên dưới.

Phương pháp 2: Cho phép các ứng dụng sử dụng DDE trong cài đặt của Excel

Như nhiều người dùng đã báo cáo, sự cố có thể xảy ra nếu Microsoft Excel được thiết lập để bỏ qua bất kỳ ứng dụng nào cố gắng giao tiếp với Excel bằng giao thức Dynamic Data Exchange (DDE) .

Ví dụ: giả sử bạn bấm đúp vào sổ làm việc Excel trong Windows Explorer - ngay sau khi lệnh đăng ký, một trao đổi dữ liệu động (DDE) sẽ được gửi đến Excel. Trao đổi đó sẽ hướng dẫn Excel mở sổ làm việc mà bạn vừa nhấp đúp.

Nếu Excel được thiết lập để bỏ qua các ứng dụng sử dụng giao thức Trao đổi Dữ liệu Động , việc trao đổi sẽ không diễn ra và thay vào đó bạn sẽ thấy thông báo lỗi 'Microsoft Excel đang đợi một ứng dụng khác hoàn thành hành động OLE' .

May mắn thay, bạn có thể dễ dàng khắc phục sự cố này bằng cách truy cập menu Tùy chọn của Excel và bật giao thức DDE. Dưới đây là hướng dẫn nhanh về cách thực hiện việc này:

  1. Mở Microsoft Excel và nhấp vào Tệp . Không quan trọng nếu bạn mở một sổ làm việc mới hoặc một tài liệu mới.Mở Microsoft Excel và đi tới Tệp
  2. Trong menu Tệp , bấm vào Tùy chọn từ ngăn bên trái.Đi tới Tệp> Tùy chọn
  3. Trong menu Tùy chọn Excel , bấm vào tab Nâng cao từ menu bên trái. Sau đó, di chuyển sang ngăn bên phải và cuộn xuống cho đến khi bạn đến phần Chung . Khi bạn đến đó, hãy đảm bảo rằng hộp được liên kết với Bỏ qua các ứng dụng khác sử dụng Trao đổi dữ liệu động (DDE) được bỏ chọn.Bật giao thức DDE trong Excel
  4. Bấm Ok để lưu các thay đổi, sau đó khởi động lại Microsoft Excel. Sau đó, lặp lại thao tác trước đó đã gây ra lỗi “Microsoft đang đợi ứng dụng khác hoàn thành hành động OLE” và xem liệu sự cố có còn xảy ra hay không.

Nếu bạn vẫn gặp phải thông báo lỗi tương tự, hãy chuyển sang phương pháp tiếp theo bên dưới.

Phương pháp 3: Loại bỏ quá trình Internet Explorer (IE)

Một số người dùng gặp lỗi “Microsoft đang đợi một ứng dụng khác hoàn thành tác vụ OLE” khi cố gắng lưu tệp, bạn có thể gặp lỗi do một quy trình IE đang can thiệp vào trao đổi Dynamic Data Exchange (DDE) .

Người dùng trong một tình huống tương tự đã báo cáo rằng sự cố đã được giải quyết sau khi họ giết quá trình IE theo cách thủ công. Dưới đây là hướng dẫn nhanh về cách thực hiện việc này:

  1. Nhấn Ctrl + Shift + Esc để mở Trình quản lý tác vụ .
  2. Bên trong Trình quản lý tác vụ, hãy chuyển đến tab Quy trình và xem liệu bạn có bất kỳ quy trình nào thuộc Internet Explorer hiện đang hoạt động hay không.
  3. Nếu bạn thấy một cái đang mở, chỉ cần nhấp chuột phải vào nó và chọn Kết thúc tác vụ để đóng nó.Đóng quá trình Internet Explorer (IE)
  4. Quay lại Excel và xem lỗi “Microsoft đang đợi một ứng dụng khác hoàn thành tác vụ OLE” có còn xảy ra khi bạn đang cố gắng lưu tệp hay không.

Nếu bạn vẫn gặp phải lỗi tương tự, hãy chuyển xuống phương pháp tiếp theo bên dưới.

Method 4: Suppressing the Excel Application Messaging

If you’re seeing the error message when trying to run a VBA script, one workaround would be to suppress the application messaging by using a tiny piece of code.

But keep in mind that this will not treat the issue itself – It’s only a workaround that prevents the error message from appearing. However, it will be helpful if your only goal is to prevent the error message from appearing.

Here’s a quick guide on inserting a VBA code to excel Workbook that will suppress the excel application messaging:

  1. Open your workbook in Excel and press Alt + F11 to open the Visual Basic Editor (VBE).
  2. In the Project bar (left-hand side), right-click on ThisWorkbook and choose Insert > Module.Nhấp chuột phải vào ThisWorkbook và chọn Chèn> Mô-đun
  3. In the newly created module, paste the following code (in the right section of the screen):
    Private Declare Function CoRegisterMessageFilter Lib "ole32" (ByVal IFilterIn As Long, ByRef PreviousFilter) As Long Public Sub KillMessageFilter()    Dim IMsgFilter As Long    CoRegisterMessageFilter 0&, IMsgFilter End Sub Public Sub RestoreMessageFilter()    Dim IMsgFilter As Long    CoRegisterMessageFilter IMsgFilter, IMsgFilter End Sub

    Update: Other users have reported that they managed to prevent the error prompt from appearing by using the following VBA code:

    Sub CreateXYZ()       Dim wdApp As Object     Dim wd As Object          On Error Resume Next     Set wdApp = GetObject(, "Word.Application")     If Err.Number  0 Then         Set wdApp = CreateObject("Word.Application")     End If     On Error GoTo 0     Set 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. Press Ctrl + S and click No when you see the “The following features cannot be saved in macro-free workbook” warning.Nhấp vào Không ở lời nhắc cảnh báo
  5. Then, choose a suitable location for the modified workbook set a proper name and make sure that the Save as type is set to Excel Macro-Enabled Workbook. Once everything is in order, click on Save to create the Excel Macro-Enabled Workbook.Tạo sổ làm việc Excel Hỗ trợ Macro
  6. Press Alt + Q to close the editor and go back to your workbook. Once you’re back in your editor press Alt + F8, select the Macro that you’ve just created and click Run.

Once this procedure is complete, you should no longer see the ‘Microsoft Excel is waiting for another application to complete an OLE action’ error with this WorkBook (even though it might still occur in the background).

Method 5: Disable Compatibility Mode (if applicable)

Some users have managed to resolve the issue after discovering that the Excel executable was running in Compatibility mode. This can happen due to manual user intervention or a 3rd party application.

If you suspect that Excel is running in compatibility mode, disable it and see if the ‘Microsoft Excel is waiting for another application to complete an OLE action’ error stops appearing. Typically, the error is reported to occur if the Excel executable is configured to run in Compatibility mode with Windows Vista and older.

Here’s a quick guide on disabling Compatibility Mode:

  1. Right-click the Excel executable (or the shortcut) and choose Properties.Nhấp chuột phải vào tệp thực thi Excel và chọn Thuộc tính
  2. Trong cửa sổ Thuộc tính , chuyển đến tab Tương thích và bỏ chọn hộp được liên kết với Chạy chương trình này ở chế độ tương thích .Bỏ chọn Chạy chương trình này ở chế độ tương thích