Zum Hauptinhalt springen

Wie schließe ich Excel in VBA, ohne es zu speichern

Microsoft Excel - eines der beliebtesten Programme für die Arbeit mit Tabellen und Berechnungen. Manchmal müssen Sie bei der Arbeit mit Excel in VBA eine Arbeitsmappe schließen, ohne die vorgenommenen Änderungen zu speichern. Dies kann beispielsweise nützlich sein, wenn Sie die Daten automatisch aktualisieren und die Datei schließen müssen, ohne die Änderungen zu speichern, um Zeit und Ressourcen zu sparen.

Verwenden Sie in VBA die Methode, um eine Arbeitsmappe zu schließen, ohne sie zu speichern Close mit Parameter SaveChanges installiert auf False. Dadurch können Sie die Arbeitsmappe schließen, ohne die vorgenommenen Änderungen an der Datei zu speichern.

Workbook.Close SaveChanges:=False

Mit dieser Methode können Sie eine Arbeitsmappe mithilfe von VBA programmgesteuert einrasten, haben jedoch keine Auswirkung auf die mit ihr geöffneten Excel-Fenster. Um Excel vollständig zu schließen, ohne die Änderungen zu speichern, müssen Sie die Methoden verwenden Quit und Application.DisplayAlerts. Bevor Sie den Befehl ausführen Quit es sollte ein Wert festgelegt werden Application.DisplayAlerts auf False, damit keine Systemwarnmeldungen angezeigt werden. Dies ist besonders nützlich, wenn Sie die Anwendung automatisch schließen.

Daher können Sie die Arbeitsmappe schließen, indem Sie diese beiden Methoden in VBA kombinieren, ohne sie zu speichern und Excel vollständig zu beenden.

Überblick über den Prozess zum Schließen von Excel in VBA ohne Speichern

Das Schließen einer Excel-Datei, ohne die Änderungen zu speichern, kann in vielen Programmierszenarien mit VBA nützlich sein. Dies kann beispielsweise erforderlich sein, wenn Sie die Datei nach der Verarbeitung automatisch schließen möchten oder wenn bestimmte Bedingungen auftreten.

Sie können die Methode verwenden, um eine Excel-Datei zu schließen, ohne die Änderungen in VBA zu speichern Close mit Parameter SaveChanges in Wert angegeben False. Dadurch können Sie die Datei schließen, ohne dass Sie aufgefordert werden, die Änderungen zu speichern.

Sub CloseExcelWithoutSaving() ThisWorkbook.Close SaveChanges:=False End Sub

In diesem Beispiel wird die Methode Close wird für die aktive Excel-Datei aufgerufen, die durch das Objekt dargestellt wird ThisWorkbook. Parameter SaveChanges wird auf einen Wert festgelegt False, um zu verhindern, dass Änderungen gespeichert werden.

Sie können auch die Methode verwenden ChangeFileAccess mit Parameter xlReadOnly um eine Datei zu schließen, ohne sie zu speichern:

Sub CloseExcelWithoutSaving() Application.ChangeFileAccess ThisWorkbook.FullName, xlReadOnly ThisWorkbook.Close SaveChanges:=False End Sub

In diesem Beispiel ist die Methode ChangeFileAccess ändert den Zugriff auf die Datei in Nur lesen. Dann wird die Methode aufgerufen Close mit Parameter SaveChanges gleichen False um die Datei zu schließen, ohne sie zu speichern.

Es ist wichtig zu beachten, dass bei der Verwendung von Methoden Close oder ChangeFileAccess ohne die Änderungen zu speichern, gehen alle nicht gespeicherten Daten verloren, daher sollten Sie sicherstellen, dass alle erforderlichen Änderungen gespeichert wurden, bevor Sie diese Methoden verwenden.

Schließen von Excel ohne Speichern

In einigen Fällen müssen Sie möglicherweise die Excel-Datei schließen, ohne die vorgenommenen Änderungen zu speichern. Dies kann beispielsweise nützlich sein, wenn die Arbeit mit einer Datei vorübergehend ist oder wenn Sie zum ursprünglichen Zustand eines Dokuments zurückkehren möchten.

Ein Grund, warum Sie Excel schließen möchten, ohne es zu speichern, besteht darin, versehentlich Daten zu ändern oder wichtige Informationen zu löschen. In diesem Fall können Sie Zeit sparen und Datenverlust vermeiden, wenn die Datei ohne Speichern geschlossen wird.

Ein anderes Beispiel, bei dem das Schließen von Excel ohne Speichern hilfreich sein kann, ist eine Situation, in der Sie mit Testdaten arbeiten oder Experimente durchführen und temporäre Änderungen an einem Dokument vornehmen, die Sie nicht speichern müssen.

Das Schließen von Excel ohne Speichern kann auch bei der Automatisierung von Aufgaben hilfreich sein. Wenn Sie beispielsweise ein Makro ausführen, das in mehreren Excel-Dateien ausgeführt werden muss, müssen Sie möglicherweise jede Datei automatisch schließen, ohne sie zu speichern, nachdem der Vorgang abgeschlossen ist.

Um Excel ohne Speichern zu schließen, können Sie den VBA-Code verwenden, der die Datei schließt, ohne das Dialogfeld zum Speichern von Änderungen aufzurufen. Es ist wichtig zu bedenken, dass bei diesem Ansatz alle vorgenommenen Änderungen verloren gehen, ohne dass sie wiederhergestellt werden können.

Verwenden des Befehls Schließen zum Schließen von Excel

In VBA (Visual Basic for Applications) wird der Befehl Close verwendet, um Excel zu schließen, ohne das aktuelle Dokument zu speichern. Dies kann nützlich sein, wenn Sie eine Datei schließen möchten, ohne die Änderungen zu speichern.

Um den Close-Befehl in VBA zu verwenden, müssen Sie zuerst auf das Objekt zugreifen, das die geöffnete Excel-Datei darstellt. Sie können dann die Close-Methode dieses Objekts verwenden, um die Datei zu schließen, ohne die Änderungen zu speichern.

Hier ist ein Codebeispiel, das die Verwendung des Befehls Close zum Schließen von Excel in VBA veranschaulicht:

Dim wb As Workbook

Set wb = ThisWorkbook 'oder geben Sie den Pfad zur gewünschten Datei an

'Schließen Sie Excel ohne Speichern

In diesem Beispiel deklarieren wir die Variable wb vom Typ Workbook und setzen sie auf ein ThisWorkbook-Objekt, das die aktuell geöffnete Excel-Datei darstellt. Sie können die Variable wb auch auf ein Workbook-Objekt festlegen, das eine bestimmte Datei darstellt, indem Sie den Dateipfad angeben.

Dann verwenden wir die Close-Methode dieses Workbook-Objekts und übergeben den SaveChanges-Parameter mit dem Wert False, um die Datei zu schließen, ohne die Änderungen zu speichern.

Beachten Sie, dass Sie auch den Befehl Application verwenden können, wenn Sie Excel vollständig schließen möchten.Quit anstelle der Close-Methode. Wenn Sie jedoch den Befehl Quit verwenden, gehen alle Änderungen an allen geöffneten Dateien verloren. Seien Sie also vorsichtig, wenn Sie diesen Befehl verwenden.

Es ist wichtig zu beachten, dass Excel bei Verwendung des Befehls Close oder Quit Sie nicht fragt, ob Sie die Änderungen in der Datei speichern möchten. Dies kann in Situationen nützlich sein, in denen Sie eine Datei schließen möchten, ohne sie zu speichern, um zu vermeiden, dass unerwünschte Änderungen versehentlich gespeichert werden.

Festlegen des Parameters SaveChanges beim Schließen von Excel

Wenn Sie Excel mit VBA schließen, können Sie den Parameter SaveChanges festlegen, um zu steuern, ob Änderungen vor dem Schließen der Arbeitsmappe gespeichert oder rückgängig gemacht werden. Diese Option ist nützlich, wenn Sie den Benutzer auf nicht gespeicherte Daten aufmerksam machen oder Änderungen automatisch speichern möchten, ohne dass ein Dialogfeld angezeigt wird.

Sie müssen die Workbooks-Methode verwenden, um den Parameter SaveChanges festzulegen.Close:

  • Buchtitel - Der Name des Buches, das geschlossen werden soll;
  • Wert ist der Wert des Parameters SaveChanges, der einen der folgenden Werte annehmen kann:
  • True - änderungen speichern, bevor Sie geschlossen werden, ohne das Dialogfeld anzuzeigen;
  • False - änderungen nicht speichern und die Arbeitsmappe schließen, ohne dass ein Dialogfeld angezeigt wird;
  • xlPrompt - zeigt ein Dialogfeld an, in dem Sie vor dem Schließen Änderungen speichern oder rückgängig machen können.

In diesem Beispiel ist das Buch "Meine Datei.xlsx" wird geschlossen, ohne die Änderungen zu speichern.

Wenn Sie den Parameter SaveChanges beim Schließen von Excel mit VBA festlegen, können Sie das Speichern von Änderungen steuern und den Benutzer vor dem Schließen der Arbeitsmappe vor nicht gespeicherten Daten warnen.

Gewusst wie: Verwenden des Befehls Close mit dem Parameter SaveChanges

In der Programmiersprache VBA (Visual Basic for Applications) gibt es zum Schließen einer Excel-Arbeitsmappe einen Close-Befehl. Mit diesem Befehl können Sie den Parameter SaveChanges angeben, der angibt, ob Änderungen an der Arbeitsmappe gespeichert werden sollen, bevor Sie sie schließen. Betrachten Sie die praktische Anwendung dieses Befehls.

Angenommen, Sie haben ein Makro, das die Daten in einer Excel-Arbeitsmappe automatisch verarbeitet. Nachdem Sie die Verarbeitung abgeschlossen haben und die Ergebnisse erhalten haben, müssen Sie möglicherweise die Arbeitsmappe schließen und zu einer anderen Aufgabe wechseln. Bevor Sie die Arbeitsmappe schließen, möchten Sie jedoch sicherstellen, dass alle Änderungen gespeichert wurden.

Dazu können Sie den Befehl Close mit dem Parameter SaveChanges verwenden. Wenn Sie diesen Parameter auf True festlegen, werden Sie von Excel aufgefordert, alle Änderungen zu speichern, bevor Sie die Arbeitsmappe schließen. Wenn der Parameterwert False ist, werden die Änderungen nicht gespeichert und die Arbeitsmappe wird ohne weitere Fragen geschlossen.

Hier ist ein Codebeispiel, das die Verwendung des Befehls Close mit dem Parameter SaveChanges veranschaulicht:

Sub CloseWorkbook()ActiveWorkbook.Close SaveChanges:=True ' Сохранить изменения перед закрытием' Дополнительные действия после закрытия книгиEnd Sub

In diesem Beispiel wird eine aktive Arbeitsmappe (ActiveWorkbook) verwendet, Sie können jedoch auch eine bestimmte Arbeitsmappe anhand ihres Namens oder Indexes angeben. Anschließend wird der Close-Befehl verwendet, wobei der Parameter SaveChanges auf True festgelegt ist.

Nachdem Sie die Arbeitsmappe geschlossen haben, können Sie weitere Aktionen hinzufügen, die nach dem Schließen ausgeführt werden. Sie können beispielsweise eine andere Arbeitsmappe öffnen, ein anderes Makro ausführen oder eine Meldung anzeigen, dass eine Operation erfolgreich ausgeführt wurde.

Wenn Sie also den Befehl Close mit dem Parameter SaveChanges verwenden, können Sie steuern, ob Änderungen gespeichert werden, bevor Sie die Excel-Arbeitsmappe schließen. Dies ist eine praktische Anwendung eines Befehls, mit dem Sie den Automatisierungs- und Datenverarbeitungsvorgang effizient verwalten können.