Zum Hauptinhalt springen

Excel VBA: Wie schließe ich das aktive Fenster

Excel VBA (Visual Basic for Applications) ist ein leistungsfähiges Tool, mit dem Sie die Arbeit mit Tabellen und Daten in Excel automatisieren können. Eine der häufig gestellten Fragen von Anfängern ist, wie man ein aktives Fenster in Excel mit VBA schließt.

Um das aktive Fenster in Excel mit VBA zu schließen, können Sie die Close-Methode des ActiveWindow-Objekts verwenden. Diese Methode schließt das aktuelle Fenster mit der aktiven Arbeitsmappe, ohne die Änderungen zu speichern. Wenn Sie Änderungen speichern möchten, bevor Sie eine Methode verwenden, können Sie zuerst die Save-Methode des ActiveWorkbook-Objekts aufrufen.

Sub CloseActiveWindow()

' Änderungen an der aktiven Arbeitsmappe speichern

ActiveWorkbook.Save

' Schließen Sie das aktive Fenster

ActiveWindow.Close

End Sub

Dieser Code speichert die Änderungen in der aktiven Arbeitsmappe mithilfe der Save-Methode des ActiveWorkbook-Objekts und schließt dann das aktive Fenster mit der Close-Methode des ActiveWindow-Objekts.

Mit Excel VBA können Sie viele Aktionen in Excel automatisieren, darunter das Schließen von Fenstern, das Speichern von Daten, das Erstellen von Berichten und vieles mehr. Das Wissen über VBA kann die Arbeit mit Excel erheblich beschleunigen und es Ihnen ermöglichen, mit großen Datenmengen effizienter umzugehen.

Excel VBA: Schließen des aktiven Fensters

In Excel VBA können Sie die Close-Funktion verwenden, um das aktive Fenster oder den aktiven Prozess zu schließen. Dies kann nützlich sein, wenn Sie das Fenster automatisch schließen müssen, nachdem Sie bestimmte Aktionen ausgeführt haben.

Verwenden Sie den folgenden Code, um das aktive Fenster in Excel VBA zu schließen:

ActiveWindow.Close

Dieser Code schließt das aktive Fenster, vorausgesetzt, es wurde ausgewählt oder aktiviert.

Wenn Sie ein bestimmtes Fenster nach seinem Namen schließen möchten, können Sie den folgenden Code verwenden:

Windows("Название окна").Close

Hier ist "Fenstername" der Name des Fensters, das Sie schließen möchten. Stellen Sie sicher, dass der Name des Fensters korrekt ist und mit seinem genauen Namen übereinstimmt.

Sie können eine For Each-Schleife verwenden, um alle geöffneten Fenster in Excel VBA zu schließen:

Dim wb As WorkbookFor Each wb In Workbookswb.CloseNext wb

Der obige Code schließt alle geöffneten Excel-Arbeitsmappen.

Denken Sie daran, Änderungen am Dokument zu speichern, bevor Sie es bei Bedarf schließen. Dazu können Sie die Save-Methode verwenden:

ActiveWorkbook.Save

Dieser Code speichert die Änderungen in der aktiven Arbeitsmappe, bevor Sie sie schließen. Wenn Sie eine Arbeitsmappe mit einem bestimmten Namen speichern möchten, verwenden Sie den folgenden Code:

ActiveWorkbook.SaveAs "Путь_к_файлу\Имя_файла"

Hier ist "Dateipfad\Dateiname" der Pfad und Name der Datei, in der die Arbeitsmappe gespeichert werden soll.

Verwenden Sie Fensterschließcodes in Excel VBA, um Ihre Arbeit mit Makros zu vereinfachen und Prozesse in Excel zu automatisieren.

Definieren des aktiven Fensters

Um beispielsweise den Namen des aktiven Arbeitsblatts abzurufen, können Sie den folgenden Code verwenden:

Dim activeSheet As StringactiveSheet = ActiveWindow.ActiveSheet.Name

In diesem Beispiel wird der ActiveSheet-Variablen der Name des aktiven Arbeitsblatts zugewiesen. Die ActiveSheet-Eigenschaft wird von der ActiveWindow-Eigenschaft zurückgegeben, die auf das aktive Fenster in Excel verweist.

Wenn Sie das aktive Fenster schließen müssen, können Sie die Close-Methode verwenden. Zum Beispiel:

ActiveWindow.Close

Dieser Code schließt das aktive Excel-Fenster. Beachten Sie, dass Sie bei der Verwendung der Close-Methode vorsichtig sein müssen, da alle Änderungen ohne Warnung geschlossen werden.

Sie können auch andere Eigenschaften und Methoden aus VBA verwenden, um mit aktiven Fenstern zu arbeiten. Zum Beispiel die ActiveWindow-Eigenschaft.Caption gibt den Titel des aktiven Fensters, die ActiveWindow-Eigenschaft, zurück.Left gibt die Position der oberen linken Ecke des aktiven Fensters zurück, die ActiveWindow-Methode.Activate aktiviert das Fenster und so weiter.

Mit diesen Eigenschaften und Methoden können Sie problemlos mit aktiven Fenstern in Excel interagieren und die erforderlichen Vorgänge ausführen.

Arbeiten mit einem Fensterobjekt in VBA

In VBA können Sie Anwendungsfenster, einschließlich des aktiven Fensters, mit einem Objekt steuern Window. Das Window-Objekt stellt eine Reihe von Eigenschaften und Methoden bereit, mit denen Sie verschiedene Vorgänge an einem Fenster ausführen können, einschließlich Öffnen, Schließen, Ändern der Größe und Verschieben.

Um mit dem Window-Objekt zu arbeiten, müssen Sie zuerst einen Verweis auf das aktive Fenster erhalten. Dies kann mithilfe der Eigenschaft erfolgen ActiveWindow Application-Objekt:

Dim activeWin As Window
Set activeWin = Application.ActiveWindow

Nachdem Sie einen Verweis auf das aktive Fenster erhalten haben, können Sie verschiedene Eigenschaften und Methoden des Window-Objekts verwenden, um es zu steuern. Um beispielsweise ein aktives Fenster zu schließen, können Sie die Methode verwenden Close:

Auch mit der Methode Activate sie können ein Fenster aktivieren, um es aktiv zu machen:

Darüber hinaus verfügt das Window-Objekt über Eigenschaften, mit denen Sie verschiedene Fensterattribute abrufen oder ändern können, z. B. den Titel, die Größe oder die Position des Fensters auf dem Bildschirm. Um beispielsweise die Größe und Position eines Fensters zu ändern, können Sie die Eigenschaften verwenden Width, Height, Top, Left:

activeWin.Width = 800
activeWin.Height = 600
activeWin.Top = 100
activeWin.Left = 100

Wenn Sie also mit einem Fensterobjekt in VBA arbeiten, können Sie Anwendungsfenster steuern, einschließlich des Schließens des aktiven Fensters und des Änderns seiner Attribute.