Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
940to944
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
940to944
940to944
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Close-Befehl funktioniert nicht

Close-Befehl funktioniert nicht
15.01.2008 19:37:32
Udo
Hallo allerseits,
ich habe folgendes Problem / Phänomen:
ich öffne eine Excel-Mappe über ein eigenes Menü:
In der Datei meinmenu.xla:
Sub Autobetreff()
Workbooks.Open (meinpfad + "\Autobetreff.xls")
End Sub


Nachdem ich mit der Mappe gearbeitet habe (die Mappe enthält ein Userform, das alle Daten entgegen nimmt und manipuliert), möchte ich die Mappe schließen, und zwar mit einem Klick auf das Schließen-Gadget der Userform:


Private Sub UserForm_Terminate()
Unload Me
ThisWorkbook.Close (False)
End Sub


Das Form wird auch geschlossen, aber die Arbeitsmappe bleibt offen. Der Witz ist, wenn ich die Arbeitsmappe normal öffne, funktioniert's. Allerdings kommt dann die lästige Abfrage wegen des VBA-Codes. Die kommt nicht, wenn ich über das Kontext-Menü arbeite. Und jetzt kommt das nächste Phänomen:
Wenn ich dem Menü ein anderes Makro zuweise, nämlich eines, was direkt in der Datei Autobetreff.xls steht, klappt das Schließen:
Code in Autobetreff.xls
Sub Open_this_Document()
ThisWorkbook.Activate
MyForm.Show
End Sub


Grundsätzlich wäre das ja auch ok, aber die automatische Einbindung der Makros ins Menü damit natürlich aufwändiger...

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Close-Befehl funktioniert nicht
15.01.2008 21:53:10
{Boris}
Hi Udo,
ungetestet:
Schließ die Mappe mal als ActiveWorkbook:

Private Sub UserForm_Terminate()
Unload Me
ActiveWorkbook.Close (False)
End Sub


Grüße Boris

AW: Close-Befehl funktioniert nicht
16.01.2008 11:14:09
Udo
Hatte ich glatt vergessen, zu erwähnen...
ActiveWorkbook.Close funktioniert auch nicht. :-(

AW: Close-Befehl funktioniert nicht
16.01.2008 15:00:00
Wolli
Hallo Udo, ist es vielleicht so, dass nach dem Unload-Befehl sowieso nix mehr ausgeführt wird? Und ist es nicht auch so, dass mit dem Schließen der Arbeitsmappe ohnehin auch die Userform Geschichte ist? Das würde entweder bedeuten:

Private Sub UserForm_Terminate()
ActiveWorkbook.Close (False)
End Sub


oder


Private Sub UserForm_Terminate()
Me.Hide
ActiveWorkbook.Close (False)
End Sub


(auch ungetestet)
Gruß, Wolli

Anzeige
AW: Close-Befehl funktioniert nicht
16.01.2008 17:27:00
Udo
Naja, die Form wird geschlossen, sobald ich auf das Schließen-Gadget klicke, aber der Code wird schon noch zuende ausgeführt. Nur wird Die Datei nicht geschlossen.
Wie gesagt, das Schließen per ThisWorkbook.Close (false) (oder auch ActiveWorkbook.Close (false)) funktioniert wunderbar, solange ich die Userform "manuell" starte, also z.B. per Befehl "Userform ausführen" im VBA-Fenster. Nur, wenn die Userform automatisch beim Öffnen des Dokuments geöffnet wurde, funktioniert es nicht.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige