Korjaus: Microsoft Excel odottaa toista sovellusta OLE-toiminnon suorittamiseksi

Useat Office-käyttäjät ilmoittavat saavansa "Microsoft odottaa toisen sovelluksen suorittavan OLE-toiminnon" -virheen yritettäessä suorittaa VBA-komentosarjaa tai kun yritetään suorittaa Excel BI: n käynnistysalustalta. Ongelma on ilmoitettu esiintyvän kaikissa uusimmissa Windows-versioissa, mukaan lukien Windows 7, Windows 8.1 ja Windows 10)

Microsoft Excel odottaa toista sovellusta OLE-toiminnon suorittamiseksi

Mikä on OLE-toiminta?

Object Linking & Embedding (OLE) -toiminto on pohjimmiltaan mekanismi, joka on suunniteltu auttamaan erilaisia ​​Office-sovelluksia (Word, Excel, Powerpoint, Sharepoint) kommunikoimaan muiden sovellusten kanssa operaation onnistuneeksi suorittamiseksi.

Mikä aiheuttaa 'Microsoft Excel odottaa toisen sovelluksen suorittavan OLE-toiminnon' -virheen?

Tutkimme tätä ongelmaa tarkastelemalla erilaisia ​​käyttäjäraportteja ja tarkastelemalla Microsoftin virallista dokumentaatiota. Onnistuimme toistamaan ongelman yhdellä testauskoneistamme.

Jos Excel lähettää viestintäpyynnön toiselle sovellukselle (sanotaan Word), se tekee sen käyttämällä OLE-objektia ja odottaa vastausta sovelluksesta. Jos vastaus ei saapu oletusajalle, Excel laukaisee loppukäyttäjälle seuraavan varoituksen: 'Microsoft Excel odottaa toista sovellusta suorittamaan OLE-toiminnon'

Vaikka virheilmoitus on aina sama, on olemassa muutama melko yleinen skenaario, joka laukaisee tämän virheen Microsoft Excelissä:

  • DDE-protokolla on poistettu käytöstä Excelistä - Tämä ongelma saattaa ilmetä, koska DDE (Dynamic Data Exchange) -protokolla on poistettu käytöstä Excelin asetuksista.
  • Vioittunut Office-asennus - Jotkut asianomaiset käyttäjät ovat ilmoittaneet, että ongelma on ratkaistu, kun he ovat asentaneet tai korjaaneet koko Office-asennuksen.
  • Adobe Acrobat PDFMaker -apuohjelma on ristiriidassa Excelin kanssa - On ollut useita raportteja käyttäjistä, jotka ovat onnistuneet ratkaisemaan ongelman poistamalla käytöstä tai poistamalla PDFMaker-laajennuksen.
  • IE (Internet Explorer) -prosessi häiritsee DDE: tä - Tämän ilmoitetaan yleensä tapahtuvan, kun käyttäjä yrittää tallentaa tiedoston Microsoft Exceliin. Tässä tapauksessa ratkaisu on sulkea prosessi manuaalisesti.

Jos yrität parhaillaan ratkaista tätä virhesanomaa, tässä artikkelissa on valikoima vianetsintävaiheita. Alla on valikoima menetelmiä, joita muut samanlaisessa tilanteessa olevat käyttäjät ovat onnistuneesti käyttäneet ongelman ratkaisemiseksi.

Saat parhaat tulokset seuraamalla alla olevia menetelmiä, kunnes kohtaat korjauksen, joka on tehokas ongelman ratkaisemisessa. Aloitetaanpa

Tapa 1: Adobe Acrobat PDFMakerin asennuksen poistaminen (jos käytettävissä)

Jotkut käyttäjät ovat onnistuneet ratkaisemaan virhesanoman poistamalla Adobe Acrobat PDF Maker -apuohjelman. Kuten käy ilmi, tämä laajennus voi olla ristiriidassa tiettyjen Microsoft Excel -versioiden kanssa.

Tässä on luettelo PDF Makerin kanssa yhteensopivista Office-versioista:

  • Office 2010 (Office 14) 32- ja 64-bittinen
  • Office 2013 (Office 15) 32- ja 64-bittinen
  • Office 2016 (Office 16) 32- ja 64-bittinen

Huomaa: Voit lukea Adoben täydellisen yhteensopivuusoppaan ( täältä ).

Jos tämä skenaario on käytettävissä, etkä luota PDF Makeriin niin kovasti, voit todennäköisesti ratkaista ongelman joko poistamalla käytöstä tai poistamalla Adobe Acrobat PDFMaker -apuohjelman.

Tässä on pikaopas siitä, miten tämä tehdään:

Päivitys: Voit käyttää tätä Fix-it-ohjelmaa (täällä) myös poistaa PDFMaker-apuohjelman automaattisesti käytöstä. Se on yhteensopiva kaikkien viimeaikaisten Windows-versioiden kanssa, mukaan lukien Windows 10, Windows 8.1, Windows 7 ja Windows Vista.

  1. Avaa Microsoft Excel ja napsauta Tiedosto- valintanauhaa.Avaa Microsoft Excel ja siirry kohtaan Tiedosto
  2. Napsauta Tiedosto-valikossa Asetukset (valikkoluettelon alaosassa).Valitse Tiedosto> Asetukset
  3. Napsauta Excel-asetukset-valikossa Apuohjelmat vasemmanpuoleista valikkoa käyttämällä. Seuraavaksi siirtyvät oikealla ruudussa laajentaa pudotusvalikosta liittyvät Hallitse ja valitse COM-apuohjelmia . Napsauta sitten Go… -painiketta käynnistääksesi Com-apuohjelmat- valikon.Siirry apuohjelmiin, valitse avattavasta valikosta COM-apuohjelmat ja napsauta Siirry
  4. Poista joko COM-apuohjelmat-ruudusta valintaruutu, joka liittyy Acrobat PDFMaker Office COM -lisäosiin, tai valitse se ja napsauta Poista poistaaksesi sen kokonaan.
  5. Käynnistä tietokone uudelleen ja luo vaiheet, jotka aiemmin tuottivat virheen, kun seuraava käynnistys on valmis.

Jos kohtaat edelleen 'Microsoft Excel odottaa toisen sovelluksen suorittavan OLE-toiminnon' -virheen, siirry seuraavaan alla olevaan menetelmään.

Tapa 2: DDE: tä käyttävien sovellusten salliminen Excelin asetuksissa

Kuten monet käyttäjät ovat ilmoittaneet, ongelma saattaa ilmetä, jos Microsoft Excel on määritetty jättämään huomiotta kaikki sovellukset, jotka yrittävät kommunikoida Excelin kanssa Dynamic Data Exchange (DDE) -protokollaa käyttäen.

Oletetaan esimerkiksi, että kaksoisnapsautat Excel-työkirjaa Resurssienhallinnassa - heti kun komento rekisteröityy, dynaaminen tiedonvaihto (DDE) lähetetään Exceliin. Tämä vaihto kehottaa Exceliä avaamaan työkirjan, jota olet juuri kaksoisnapsauttanut.

Jos Excel on määritetty jättämään huomiotta Dynamic Data Exchange -protokollaa käyttävät sovellukset , vaihtoa ei tapahdu ja näet sen sijaan 'Microsoft Excel odottaa toisen sovelluksen suorittavan OLE-toiminnon' -virhesanoman.

Onneksi voit korjata ongelman helposti siirtymällä Excelin Asetukset- valikkoon ja ottamalla DDE-protokollan käyttöön. Tässä on pikaopas siitä, miten tämä tehdään:

  1. Avaa Microsoft Excel ja napsauta Tiedosto . Ei ole väliä, avaatko uuden työkirjan vai uuden asiakirjan.Avaa Microsoft Excel ja siirry kohtaan Tiedosto
  2. Valitse Tiedosto -valikosta, klikkaa Options vasemmasta ruudusta.Valitse Tiedosto> Asetukset
  3. Valitse Excelin asetukset -valikosta on Lisäasetukset välilehti vasemmasta valikosta. Siirry sitten oikeaan ruutuun ja selaa alaspäin, kunnes pääset Yleinen- osioon. Kun olet päässyt sinne, varmista, että Ohita muita sovelluksia, jotka käyttävät dynaamista tiedonvaihtoa (DDE) -valintaruutua ei ole valittu.DDE-protokollan ottaminen käyttöön Excelissä
  4. Tallenna muutokset napsauttamalla OK ja käynnistä sitten Microsoft Excel uudelleen. Toista sitten toimenpide, joka aiheutti aiemmin "Microsoft odottaa toisen sovelluksen suorittavan OLE-toiminnon" -virheen ja tarkista, esiintyykö ongelmaa edelleen.

Jos kohtaat edelleen saman virheilmoituksen, siirry seuraavaan alla olevaan menetelmään.

Tapa 3: Internet Explorer (IE) -prosessin tappaminen

Useat käyttäjät, jotka näkevät "Microsoft odottaa toisen sovelluksen suorittavan OLE-toiminnon" -virheen yritettäessä tallentaa tiedostoa, saatat nähdä virheen IE-prosessin takia häiritsevän dynaamista tiedonvaihtoa (DDE) .

Users in a similar situation have reported that the issue was resolved after they killed the IE process manually. Here’s a quick guide on how to do this:

  1. Press Ctrl + Shift + Esc to open Task Manager.
  2. Inside Task Manager, go to the Processes tab and see if you have any process belonging to Internet Explorer that is currently active.
  3. If you see one open, simply right-click on it and choose End task to close it.Internet Explorer (IE) -prosessin sulkeminen
  4. Return to Excel and see if the “Microsoft is waiting for another application to complete an OLE action” error is still occurring when you’re trying to save the file.

If you’re still encountering the same error, move down to the next method below.

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.Napsauta hiiren kakkospainikkeella tätä työkirjaa ja valitse Lisää> Moduuli
  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.Napsauta varoituskehotteessa Ei
  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.Excelin makrokäyttöisen työkirjan luominen
  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.Napsauta hiiren kakkospainikkeella Excel-suoritettavaa tiedostoa ja valitse Ominaisuudet
  2. Vuonna Ominaisuudet ikkunassa, siirry Yhteensopivuus -välilehti ja poista liittyvä kenttä Suorita ohjelma yhteensopivuustilassa .Poista valinta Suorita tämä ohjelma yhteensopivuustilassa