Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Fenster wechseln und schließen

Fenster wechseln und schließen
17.04.2018 15:20:27
Jürgen
Hallo zusammen,
ich habe ein Tabellenblatt mit einer Combobox1. Darin eine Auswahl an Namen die auch den weiteren Tabellenblättern entsprechen.
Über ein Makro öffne ich ein neuen Fenster darin das in der Combobox1 gewählte sheet.
Sub Mitarb_öffnen()
Dim sht As String
sht = Worksheets("ACC").ComboBox1.Value
ActiveWindow.NewWindow
Windows.Arrange ArrangeStyle:=xlVertical
Worksheets(sht).Activate
End Sub
damit kann ich auch mehrere Sheets in neuen Fenstern öffnen.
Nun zu meinen Problem:
ich würde gerne über den in der Combobox1 gewählten Eintrag das Fenster mit dem entsprechenden Sheet schließen.
Sub Mitarb_schließen()
Worksheets("ACC").Activate
Dim sht As String
sht = Worksheets("ACC").ComboBox1.Value
wie jetzt zum gewählten sheet wechseln und das Fenster schließen?
Habe ich Denkfehler, ich wäre für Vorschläge dankbar.
Gruß Jürgen


		
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fenster wechseln und schließen
17.04.2018 15:38:16
ChrisL
Hi Jürgen
So wird das zweite Fenster geschlossen.
Sub tt()
Windows(2).Close
End Sub

Wenn du sicher gehen möchtest, kannst du das Fenster in einer Public Variable zwischen speichern.
Public w As Window

Sub Mitarb_öffnen()
Dim sht As String
sht = Worksheets("ACC").ComboBox1.Value
Set w = ActiveWindow.NewWindow
Windows.Arrange ArrangeStyle:=xlVertical
Worksheets(sht).Activate
End Sub

Sub t()
w.Close
End Sub
cu
Chris
Anzeige
AW: Fenster wechseln und schließen
17.04.2018 16:54:58
Jürgen
Danke Chris,
dein Vorschlag Sub tt:
ich will das erste Fenster schließen (Sheet ACC soll offen bleiben) konnte ich ändern.
dein vorschlag mit:
Set w = ActiveWindow.NewWindow und Sub t klappt nicht
bekomme Fehler bei w.close
Gruß Jürgen
AW: Fenster wechseln und schließen
17.04.2018 17:06:55
ChrisL
Hi Jürgen
Der Code müsste in ein Standardmodul. Die Public Variable "w" geht verloren, wenn du "End" machst (im Code oder beim Debuggen).
cu
Chris
Anzeige
AW: Fenster wechseln und schließen
17.04.2018 17:21:06
Jürgen
Hallo Chris,
Das makro befindet sich bei mir unter VBAProject(Dateiname) und dort im Ordner Modul4
Müsste also Standardmodul sein oder?
Im Übrigen, ich möchte ja nicht nur das gerade neu geöffnete Fenster schließen, sondern das mit dem Wert aus der Combobox1 (wenn mehrere geöffnet, dann über combobox1 auswählen und über Button schließen. So wie beim Öffnen.
Gruß Jürgen
Anzeige
AW: Fenster wechseln und schließen
17.04.2018 17:38:09
ChrisL
HI Jürgen
Ja, Standardmodul sollte passen.
Du kannst zwar abfragen, welches das aktive Blatt in den verschiedenen Fenstern ist, aber womöglich hat der Bernutzer das Blatt gewechselt, dann schliesst sich keines der Fenster.
Ich verstehe auch nicht ganz, wozu man eine ComboBox-Auswahl treffen soll, wenn man das Fenster einfach übers Kreuz schliessen kann.
Bin grad ratlos, darum lasse ich offen.
cu
Chris
Anzeige
AW: Fenster wechseln und schließen
17.04.2018 17:56:32
Jürgen
Hallo Chris,
ja klar über das Kreuz kann ich immer schließen.
Es ist so gedacht, dass Eingaben nur in der Tabelle "ACC" gemacht werden, die anderen Sheets dienen nur der Kontrolle. Wenn nun mehrere Sheets offen sind, wirds vielleicht unübersichtlich, deshalb soll man von Tab "ACC" Sheets wieder schließen können ohne zu scrollen. Der Befehl Windows (x).Close wäre schon gut, nur müsste ich halt vorher das entsprechende sheet/Fenster anwählen können, wenn mehrere geöffnet werden ändert sich ja immer die Nummer.
Die Tab ACC und die Sheets sind verknüpft (teilweise auch mir Formeln).
Anzeige
AW: Fenster wechseln und schließen
18.04.2018 08:39:07
ChrisL
Hi
Ich passe (Frage offen).
Fenster ist nicht gleich Tabelle. Daher besteht zwischen den beiden kein Bezug.
cu
Chris
AW: Fenster wechseln und schließen
19.04.2018 09:42:30
Robert
Hallo Jürgen,
versuche es vielleicht mal so:
Sub Mitarb_schließen()
Dim wind As Object, sht As String
sht = Worksheets("ACC").ComboBox1.Value
For Each wind In Windows
If wind.ActiveSheet.Name = sht Then
wind.Close
Exit For
End If
Next
End Sub
Gruß
Robert
Anzeige
AW: Fenster wechseln und schließen
19.04.2018 10:26:54
Jürgen
Hallo Robert,
danke, das genau habe ich gesucht.
Gruß Jürgen
Gerne und Danke für die Rückmeldung (owT)
19.04.2018 11:00:58
Robert
;
Anzeige
Anzeige

Infobox / Tutorial

Fenster wechseln und schließen in Excel


Schritt-für-Schritt-Anleitung

Um in Excel zwischen Fenstern zu wechseln und sie zu schließen, kannst du die folgenden Schritte befolgen:

  1. Öffne ein neues Fenster mit einem Makro:

    Sub Mitarb_öffnen()
       Dim sht As String
       sht = Worksheets("ACC").ComboBox1.Value
       ActiveWindow.NewWindow
       Windows.Arrange ArrangeStyle:=xlVertical
       Worksheets(sht).Activate
    End Sub
  2. Schließe das aktuelle Fenster mit dem folgenden Makro:

    Sub Mitarb_schließen()
       Dim wind As Object, sht As String
       sht = Worksheets("ACC").ComboBox1.Value
       For Each wind In Windows
           If wind.ActiveSheet.Name = sht Then
               wind.Close
               Exit For
           End If
       Next
    End Sub
  3. Wenn du sicherstellen möchtest, dass du das richtige Fenster schließt, kannst du eine Public Variable verwenden, um das Fenster zwischenzuspeichern:

    Public w As Window
    
    Sub Mitarb_öffnen()
       Dim sht As String
       sht = Worksheets("ACC").ComboBox1.Value
       Set w = ActiveWindow.NewWindow
       Windows.Arrange ArrangeStyle:=xlVertical
       Worksheets(sht).Activate
    End Sub
    
    Sub t()
       w.Close
    End Sub

Häufige Fehler und Lösungen

  • Excel öffnet immer 2 Fenster: Stelle sicher, dass du das richtige Makro verwendest. Verwende ActiveWindow.NewWindow, um ein neues Fenster zu öffnen, und achte darauf, dass du nicht versehentlich mehrfach das gleiche Makro ausführst.

  • Fehler beim Schließen des Fensters: Wenn du einen Fehler bei w.Close erhältst, überprüfe, ob das Makro in einem Standardmodul gespeichert ist. Public Variablen gehen verloren, wenn das Projekt beendet wird.

  • Das falsche Fenster wird geschlossen: Verwende die For Each Schleife, um sicherzustellen, dass du das Fenster mit dem aktiven Blatt schließt.


Alternative Methoden

Wenn du zwischen verschiedenen Tabs wechseln möchtest, kannst du auch die folgenden Methoden nutzen:

  • Zwischen Fenstern wechseln: Du kannst die Windows-Sammlung verwenden, um gezielt Fenster zu schließen, indem du ihre Namen oder Indizes nutzt.

  • Excel zwischen Tabs wechseln: Nutze die Tastenkombination Ctrl + Tab, um zwischen den geöffneten Fenstern zu wechseln.


Praktische Beispiele

  1. Öffnen und Schließen eines spezifischen Fensters:

    • Verwende die Combobox, um den Namen des Blattes auszuwählen und das entsprechende Fenster zu schließen.
  2. VBA für das Schließen eines spezifischen Fensters:

    Sub Mitarb_schließen()
       Dim wind As Object, sht As String
       sht = Worksheets("ACC").ComboBox1.Value
       For Each wind In Windows
           If wind.ActiveSheet.Name = sht Then
               wind.Close
               Exit For
           End If
       Next
    End Sub

Tipps für Profis

  • Fensterbeschläge wechseln: Wenn du oft zwischen Fenstern wechseln musst, nutze die Funktionalität von Excel, um Fenster nebeneinander anzuzeigen (Windows.Arrange), um die Übersicht zu behalten.

  • VBA anpassen: Passe deine VBA-Codes an, um spezifische Anforderungen zu erfüllen, wie das Schließen mehrerer Fenster gleichzeitig.


FAQ: Häufige Fragen

1. Wie kann ich mehrere Fenster in Excel öffnen?
Du kannst ein neues Fenster mit dem Befehl ActiveWindow.NewWindow öffnen und dann das gewünschte Blatt aktivieren.

2. Was mache ich, wenn Excel nicht das richtige Fenster schließt?
Stelle sicher, dass du das aktive Blatt überprüfst und die For Each Schleife korrekt implementiert ist, um das gewünschte Fenster zu identifizieren.

3. Wie kann ich zwischen Fenstern wechseln, ohne die Maus zu benutzen?
Nutze die Tastenkombination Ctrl + Tab, um zwischen den geöffneten Fenstern schnell zu wechseln.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige