none
Bug mit Workbooks.Open in UserForm bei Add-In

    Frage

  • Guten Tag

    Die Bugs:

    1. Excel terminiert die UserForm nach einem Workbooks.Open-Befehl, sofern "Startbildschirm beim Start dieser Anwendung anzeigen" deaktiviert ist.
    2. Wenn das Add-In über OneDrive oder SharePoint aus einem leeren Excel geladen wurde (d.h. vorher mit "Datei", "Schliessen" alle Mappen schliessen), stürzt Excel ab.

    Ausgangslage:

    Ein Add-In soll eine UserForm zeigen, wo der Anwender per Knopfdruck eine Arbeitsmappe öffnet.

    Das Add-In kann auf OneDrive oder SharePoint liegen.

    Schritte zum nachvollziehen:

    1. Neue Arbeitsmappe anlegen und abspeichern (beispielsweise als "C:\Test.xlsx")
    2. Neue Arbeitsmappe anlegen und VBA Editor starten
    3. UserForm einfügen
    4. In der UserForm einen Button einfügen
    5. Code in der UserForm eingeben (zum Öffnen des Workbooks und Ereignismeldungen):

      Private Sub CommandButton1_Click()
          Workbooks.Open "C:\Test.xlsx"
          MsgBox "Opened"
      End Sub

      Private Sub UserForm_Terminate()
          MsgBox "Terminating"
      End Sub

    6. Code in DieseArbeitsmappe eingeben (zum Anzeigen der UserForm beim Öffnen des Add-Ins):

      Private Sub Workbook_Open()
          UserForm1.Show
      End Sub

    7. Als Excel-Add-In abspeichern und auf OneDrive/SharePoint hochladen
    8. "Datei", "Optionen", "Allgemein", "Startoptionen", "Startbildschirm beim Start dieser Anwendung anzeigen" deaktivieren
    9. Excel beenden (alle Fenster schliessen)
    10. Excel starten und auf Datei Öffnen gehen
    11. Das Add-In auf OneDrive/SharePoint öffnen
    12. Die UserForm wird angezeigt. Dort auf den Knopf (CommandButton1) drücken
    13. Die Arbeitsmappe wird geöffnet (Test.xlsx)
    14. Nun sollte die Meldung "Opened" erscheinen und die UserForm sichtbar bleiben.
      Stattdessen verschwindet die UserForm und es erscheint die Meldung "Terminating", gefolgt von "Opened".

    • Beim Debuggen mit F8 stürzt Excel ab.

    Es funktioniert korrekt wenn:

    • vorher etwas in die leere Arbeitsmappe eingetragen wird oder eine andere Mappe geöffnet wird
    • "Startbildschirm beim Start dieser Anwendung anzeigen" aktiviert ist
    • das Excel leer ist (alle Mappen geschlossen) und das Add-In lokal geöffnet wird

    Zusammen mit der leeren "Mappe1" schliesst Excel den Benutzerdialog und versucht dann, an der vorherigen Stelle weiterzumachen, was natürlich nicht mehr recht funktioniert.

    Der Fehler tritt deshalb nur bei Add-Ins (.xla oder .xlam) auf.

    <Träum> Wäre schön, wenn MS das fixen würde <\Träum>


    • Bearbeitet Cisab Samstag, 4. Juni 2016 20:59
    Montag, 16. Mai 2016 15:47