خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


رفع خطای Microsoft Excel is waiting for another application to complete an OLE action

رفع خطای Microsoft Excel is waiting for another application to complete an OLE action
یکی از خطاهایی که کاربران هنگام باز کردن BI Excel و یا اجرای یک اسکریپت VBA در اکسل، با آن مواجه شده اند، ارور Microsoft Excel is waiting for another application to complete an OLE action می باشد. مایکروسافت برای کمک به برنامه های Office جهت برقراری ارتباط با سایر برنامه ها ، فناوری OLE (Object Linking and Embedding) را معرفی کرد. به عنوان مثال ، اگر روی اکسل کار می کنید و سعی در تعامل با Word را دارید ، پیامی به OLE می فرستد و منتظر می ماند تا پاسخی از Word دریافت کند و اگر مدت زمان دریافت پاسخ زیاد شود، خطای Microsoft Excel is waiting for another application to complete an OLE action را دریافت خواهید کرد.

سیستم یکپارچۀ سازمانی راهکار
این خطا یا به دلیل خاموش بودن پروتکل DDE در اکسل و اگر Adobe Acrobat PDFMaker را به عنوان افزونه در اکسل داشته باشید و با آن تداخلی وجود داشته باشد و یا تداخلی بین Internet Explorer و اکسل وجود دارد.


ساده ترین کار در این شرایط بستن اکسل و همه برنامه ها و ریستارت کردن سیستم تان است. سپس وضعیت ارور را بررسی کنید و اگر مشکل را کماکان دارید، روش های زیر را انجام دهید.

رفع خطای Microsoft Excel is waiting for another application to complete an OLE action . آموزشگاه رایگان خوش آموز

Removing Adobe Acrobat PDFMaker

اگر extension یا افزونه Adobe Acrobat PDFMaker را در اکسل دارید، باید آن را حذف کنید و سپس وضعیت ارور را بررسی کنید.


Allowing Other Applications that Use DDE

فایل اکسل را باز کرده به منوی File رفته و گزینه options را کلیک کنید.
بدین ترتیب فرم Excel Options باز می شود. سپس از پانل سمت چپ گزینه Advanced را انتخاب کرده و در مقابل و از بخش General، تیک گزینه Ignore other applications that use Dynamic Data Exchange (DDE). را غیرفعال کنید.

رفع خطای Microsoft Excel is waiting for another application to complete an OLE action . آموزشگاه رایگان خوش آموز

در آخر هم فرم را OK کرده و سپس وضعیت ارور را بررسی کنید.

Ending the Internet Explorer Process

اگر مرورگر Internet Explorer در سیستم تان و حتی در پس زمینه در حال اجراست، آن را ببندید. برای این منظور task manager را باز کرده و در تب Processes، برنامه Internet Explorer را یافته، روی آن کلیک راست کرده و گزینه End task را کلیک کنید.

Turn Off Compatibility Mode of Excel

روی آیکون shortcut اکسل در دسکتاپ یا در محل نصب اکسل رفته، روی آن کلیک راست کرده و Properties بگیرید.
به تب Compatibility رفته و از قسمت Compatibility mode، تیک گزینه Run this program in compatibility mode for را غیرفعال و ok کنید.

رفع خطای Microsoft Excel is waiting for another application to complete an OLE action . آموزشگاه رایگان خوش آموز

حالا وضعیت ارور را بررسی کنید.

Restricting the Excel Application Messaging

اگر هنگام اجرای VBA script با خطای مذور مواجه می شوید، این روش را دنبال کنید. این روش فقط نوعی دور زدن مشکل است و واقعا مشکل را برطرف نمی کند. امابرای لحظاتی که اسکریپت اجرا می شود، می تواند از وقوع ارور جلوگیری کند.
Excel را باز کرده و سپس کلیدهای Alt + F11 را فشار دهید. بدین ترتیب Microsoft Visual Basic for Applications باز می شود.
از Microsoft Excel Objects،روی گزینه ThisWorkbook کلیک راست کرده و از Insert، گزینه Module را برگزینید.

رفع خطای Microsoft Excel is waiting for another application to complete an OLE action . آموزشگاه رایگان خوش آموز

بدین ترتیب یک Module جدید در سمت راست ایجاد می شود که کد زیر را در آن Copy و paste کنید.

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

حتی به جای کد فوق از کد زیر هم می توانید استفاده کنید. می توانید یک Module جدید ایجاد کرده و کد را در آن کپی کنید.

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

رفع خطای Microsoft Excel is waiting for another application to complete an OLE action . آموزشگاه رایگان خوش آموز

سپس از منوی File، گزینه Save Book1 را کلیک کنید.
پس از انتخاب گزینه Save، پیغامی با متن The following features cannot be saved in macro-free workbooks را خواهید دید که آن را NO کنید.

رفع خطای Microsoft Excel is waiting for another application to complete an OLE action . آموزشگاه رایگان خوش آموز

حالا مکانی که می خواهید این workbook را ذخیره کنید را انتخاب کرده و از قسمت پایین فرم کادر ذخیره، از کامبوباکس Save as type، گزینه Excel Macro-Enabled Workbook را انتخاب کنید.
در آخر هم دکمه Save را کلیک کنید.

رفع خطای Microsoft Excel is waiting for another application to complete an OLE action . آموزشگاه رایگان خوش آموز

پس از ذخیره فایل VBA، ادیتور را بسته و به Excel برگردید. در اینجا ، کلیدهای Alt + F8 را همزمان فشرده و از پیغام Macro، همین ماکرویی که ایجاد کرده اید را انتخاب و دکمه Run را کلیک کنید.
اکنون که مراحل را به طور کامل و با موفقیت پشت سر گذاشته اید، دیگر نباید که خطا ظاهر شود.


نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.


دسته بندی مطالب خوش آموز