Aplikace Excel se nezdaří při načtení doplňku pro automatizaci

Příznaky

Když aplikace Microsoft Excel načte automatizace doplněk během buňky režimu úprav, aplikace Excel dojde k chybě. Tomuto problému dochází pouze s automatizace doplňky které byly poptávky načíst do aplikace Excel.

Příčina

Tomuto problému může dojít, pokud doplněk načte Pokud doplněk zobrazí okno formuláře nebo dialogového okna, nebo pokud doplněk vytvoří požadavek automatizace do aplikace Excel, který se pokouší změnit stav aplikace Excel. Následující seznam obsahuje ukázky automatizace požadavky, které může způsobit selhání při volání během automatizace doplněk načte během režimu úprav buňky aplikace Excel:
  • Programově změňte aktuální výběr. Například:
    Application.ActiveSheet.Range("A1").Select
  • Volání vlastnosti nebo metody položky v kolekci Windows. Například:
    Application.ActiveWindow.Zoom = 200
  • Změňte nastavení aplikace Excel, jako je například režim pro výpočet. Například:
    Application.CalculationMode = xlManual
Všechny tyto položky jsou příklady kódu pokusí změnit prostředí Excel, sešitu nebo listu. Tyto typy akcí, které nejsou povoleny v režimu úprav.

Řešení

Výše uvedené akce při doplněk načte nepokoušejte. Doplněk zahrnují metody, které jsou volány během zatížení metoda Initialize a Pokud doplněk automatizace implementuje rozhraní IDTExtensibility2 , OnConnection a také metod OnStartupComplete .

Stav

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti uvedených na začátku tohoto článku.

Další informace

Kroky pro reprodukci problému

  1. Spuštění nového projektu ActiveX DLL v jazyce Visual Basic.
  2. Z nabídky projekt klepněte na příkaz Project1 vlastnosti. Změnit Název projektu TestAddIna potom klepněte na tlačítko OK.
  3. Třídy Class1 přidejte následující kód do modulu kódu:
    Private Sub Class_Initialize()    MsgBox "Class_Initialize"
    End Sub

  4. Sestavení TestAddIn.dll.
  5. V aplikaci Excel spusťte nový sešit.
  6. V aplikaci Microsoft Office Excel 2003 nebo v aplikaci Microsoft Excel 2002 postupujte takto:
    1. V nabídce Nástroje přejděte na Doplňkya potom klepněte na tlačítko automatizace.
    2. V seznamu klepněte na tlačítko TestAddIn.Class1a klepněte na tlačítko OK.
    3. V dialogovém okně Doplňky klepněte na tlačítko OK.
    V aplikaci Microsoft Office Excel 2007 postupujte takto:
    1. Klepněte na Tlačítko Microsoft Officea potom klepněte na tlačítko
      Možnosti aplikace Excel.
    2. Klepněte na kartu Doplňky .
    3. V seznamu Spravovat klikněte na položku Doplňky aplikace Excela potom klepněte na tlačítko Přejít.
    4. V dialogovém okně Doplňky klepněte na tlačítko
      Automatizace.
    5. V seznamu klepněte na tlačítko TestAddin.Class1a klepněte na tlačítko OK.
    6. Klepněte na tlačítko OK
  7. Typ = do libovolné buňky. Zobrazí se okno se zprávou s textem "Class_Initialize".
  8. Klepněte na tlačítko OK zavřete okna se zprávou. Po několika sekundách aplikace Excel dojde k chybě.

Odkazy

Další informace získáte kliknutím na následující číslo v článku databáze Microsoft Knowledge Base:
291392 INFO: doplňky modelu COM a automatizaci doplňky aplikace Excel

Vlastnosti

ID článku: 284876 - Poslední kontrola: 23. 1. 2017 - Revize: 1

Váš názor