Excel mislukt wanneer automatiseringsinvoegtoepassing laden

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 284876 - Bekijk de producten waarop dit artikel van toepassing is.
Alles uitklappen | Alles samenvouwen

Op deze pagina

Symptomen

Wanneer Microsoft Excel wordt geladen een automatiseringsinvoegtoepassing tijdens cel bewerkings modus, Excel mislukt. Dit probleem treedt alleen op met automatiseringsinvoegtoepassingen die zijn vraag in Excel geladen.

Oorzaak

Dit probleem kan optreden als een invoegtoepassing wordt geladen als de invoegtoepassing een formulier of dialoog venster weer gegeven of als de invoegtoepassing een verzoek automatisering maakt Excel probeert te wijzigen van de status van Excel. De volgende lijst bevat Voorbeelden van automatiserings aanvragen waardoor Excel mislukt wanneer deze wordt aangeroepen terwijl een automatiseringsinvoegtoepassing tijdens de cel laden bewerkings modus:
  • Programmatisch wijzigen van de huidige selectie. Bijvoorbeeld:
    Application.ActiveSheet.Range("A1").Select
    					
  • Een eigenschap of methode van een item in de Windows aanroepen collectie. Bijvoorbeeld:
    Application.ActiveWindow.Zoom = 200
    					
  • Een Excel-instelling zoals de berekenings modus wijzigen. Voor in het volgende voorbeeld:
    Application.CalculationMode = xlManual
    					
Al deze items zijn voorbeelden van code probeert te wijzigen de Excel-omgeving, een werkmap of een werk blad. Dit soort acties zijn niet toegestaan in de bewerkings modus.

Oplossing

Probeer niet de bovengenoemde acties tijdens uw invoegtoepassing laadt. Methoden die worden aangeroepen tijdens het laden van de invoegtoepassing deInitialiserenmethode en implementeert de automatisering in deIDTExtensibility2interface, deOnConnectionenOnStartupCompleteook methoden.

Status

Microsoft heeft bevestigd dat dit zich kan voordoen in de Microsoft producten die aan het begin van dit artikel worden vermeld.

Meer informatie

Stappen om het probleem te reproduceren

  1. Start een nieuw ActiveX DLL-project in Visual Basic.
  2. Uit deProjectmenu, klikt u opProject1 eigenschappen. Wijziging deProject naamnaarTestAddIn, en klik vervolgens opOK.
  3. Voeg de volgende code aan de codemodule voor Class1:
    Private Sub Class_Initialize()
        MsgBox "Class_Initialize"
    End Sub
    					
  4. TestAddIn.dll bouwen.
  5. Maak een nieuwe werkmap in Excel.
  6. In Microsoft Office Excel 2003 of in Microsoft Excel 2002, volg deze stappen:
    1. Op hetHulp programma'shet menuInvoegtoepassingen, en klik vervolgens opAutomatisering.
    2. Klik in de lijstTestAddIn.Class1, en klik vervolgens opOK.
    3. In deInvoegtoepassingenhet dialoog venster, klikt u opOK.
    In Microsoft Office Excel 2007, volg deze stappen:
    1. Klik op deMicrosoft Office-knop, en klik vervolgens opOpties voor Excel.
    2. Klik op deInvoegtoepassingentabblad.
    3. In deBeherenweer geven, klikt u opExcel-invoegtoepassingen, en klik vervolgens opGa naar.
    4. In deInvoegtoepassingenhet dialoog venster, klikt u opAutomatisering.
    5. Klik in de lijstTestAddin.Class1, en klik vervolgens opOK.
    6. Klik opOK.
  7. Type= eenin een willekeurige cel. Een berichtvenster met de tekst verschijnt "class_initialize".
  8. Klik opOKaan het bericht negeren. Na een paar seconden in Excel mislukt.

Referenties

Voor Als u meer informatie wilt, klikt u op het volgende artikelnummer om het artikel te bekijken in de Microsoft Knowledge Base:
291392INFO: Excel COM-invoegtoepassingen en automatisering-invoegtoepassingen

Eigenschappen

Artikel ID: 284876 - Laatste beoordeling: zaterdag 26 februari 2011 - Wijziging: 2.0
De informatie in dit artikel is van toepassing op:
  • Microsoft Office Excel 2007
  • Microsoft Excel 2002 Standard Edition
Trefwoorden: 
kbautomation kbbug kbpending kbmt KB284876 KbMtnl
Automatisch vertaald artikel
BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.
De Engelstalige versie van dit artikel is de volgende:284876

Geef ons feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com