Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Application.DisplayAlerts = False

Forumthread: Application.DisplayAlerts = False

Application.DisplayAlerts = False
25.11.2004 18:27:21
Frank
Hallo Excelperten,
ich schließe eine Datei die nicht gespeichert werden soll und Excel folgendermaßen:
...
Application.DisplayAlerts = False
Application.Quit
End Sub
Nun steht aber in der Excelhilfe, dass man DisplayAlerts wieder auf True setzen sollte. Das kann aber bei meinem Code nicht klappen, weil Excel dann ja schon zu ist. Hat jemand von Euch vielleicht eine Lösung?
MfG
Frank
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Application.DisplayAlerts = False
25.11.2004 18:38:10
andre
Hallo Frank,
setze
Workbook.Saved=true
und Du kannst die allerts displayen oder wie das auf Deutsch heisst ... ;-)
AW: Application.DisplayAlerts = False
25.11.2004 18:46:46
Frank
Hallo Andre,
habe ich schon versucht, aber Excel fragt trotzdem ob ich die Datei speichern möchte!?
Gruß
Frank
AW: Application.DisplayAlerts = False
25.11.2004 18:51:46
Hübi
Hi Frank,
ich kenne mich mit VBA auch nicht sooooo gut aus, aber ich würde es soooooo machen
...
Application.DisplayAlerts = False
Application.Quit
Application.DisplayAlerts = True
End Sub
Gruß Hübi
Anzeige
AW: Application.DisplayAlerts = False
25.11.2004 18:53:29
Frank
Hallo Hübi,
hatte ich auch so, aber das Makro wird ja nicht bis
Application.DisplayAlerts = True
ausgeführt, weil die Datei und Excel durch
Application.Quit
geschlossen werden.
Gruß
Frank
AW: Application.DisplayAlerts = False
25.11.2004 18:56:16
Josef Ehrensberger
Hallo Frank!
Mach's so.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
With Application
.DisplayAlerts = False
Me.Close
.DisplayAlerts = True
.Quit
End With
End Sub


Gruß Sepp
Anzeige
AW: Application.DisplayAlerts = False
25.11.2004 19:00:18
Frank
Hallo Sepp,
kann ich diesen Code auch in einen Commandbutton auf einer Userform einbauen?
Gruß
Frank
AW: Application.DisplayAlerts = False
25.11.2004 19:02:47
Hübi
Hi Frank,
das habe ich jetzt getestet - funzt

Sub excelende()
Application.Quit
ActiveWorkbook.Saved = True
End Sub

Gruß Hübi
Anzeige
AW: Application.DisplayAlerts = False
25.11.2004 19:55:53
Frank
Hallo Hübi,
in einer neuen Datei klappt dein Vorschlag bei mir auch! Aber nicht in meiner eigentlichen Datei... Danke für deine Hilfe...
Gruß
Frank
AW: Application.DisplayAlerts = False
25.11.2004 20:59:03
Udo
Prüf mal in deiner Datei, ob EnableEvents auf True steht.
Udo
AW: Application.DisplayAlerts = False
25.11.2004 21:16:11
Frank
Hallo Udo,
EnableEvents ist auf True...
Gruß
Frank
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Anwendung von Application.DisplayAlerts in VBA


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor in Excel mit ALT + F11.
  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf einen der Einträge im Projektfenster und wähle „Einfügen“ > „Modul“ aus.
  3. Gib den folgenden Code ein, um Application.DisplayAlerts zu verwenden. Dies unterdrückt die Warnmeldungen, wenn du eine Datei schließt:
    Sub SchließeOhneSpeichern()
       With Application
           .DisplayAlerts = False
           ActiveWorkbook.Close
           .DisplayAlerts = True
       End With
    End Sub
  4. Führe das Makro aus, um das Verhalten zu testen.

Häufige Fehler und Lösungen

  • Problem: Application.DisplayAlerts = False funktioniert nicht wie erwartet.

    • Lösung: Stelle sicher, dass du das Makro richtig konfiguriert hast. Überprüfe, ob du Workbook.Saved = True verwendest, um zu verhindern, dass die Speicherabfrage erscheint.
  • Problem: Excel fragt weiterhin, ob die Datei gespeichert werden soll.

    • Lösung: Setze ActiveWorkbook.Saved = True vor dem Schließen des Workbooks, um zu signalisieren, dass keine Änderungen vorgenommen wurden.

Alternative Methoden

Du kannst auch die Workbook_BeforeClose-Ereignisprozedur verwenden, um DisplayAlerts zu steuern:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    With Application
        .DisplayAlerts = False
        Me.Close
        .DisplayAlerts = True
    End With
End Sub

Diese Methode stellt sicher, dass die Warnmeldungen nur unterdrückt werden, wenn das Workbook geschlossen wird.


Praktische Beispiele

Hier ist ein einfaches Beispiel, das Application.DisplayAlerts verwendet, um eine Datei zu schließen, ohne die Speichermeldung anzuzeigen:

Sub DateiSchließenOhneSpeichern()
    Application.DisplayAlerts = False
    ActiveWorkbook.Close
    Application.DisplayAlerts = True
End Sub

Du kannst diese Methode in Deiner Userform oder einem CommandButton verwenden, um die Benutzerfreundlichkeit zu verbessern.


Tipps für Profis

  • Verwende EnableEvents: Wenn du DisplayAlerts verwendest, überprüfe, ob Application.EnableEvents auf True gesetzt ist. Wenn nicht, könnte es zu unerwartetem Verhalten kommen.
  • Debugging: Nutze Debug.Print oder MsgBox, um sicherzustellen, dass dein Code die erwarteten Werte hat, bevor du Application.DisplayAlerts änderst.
  • Schutz vor Fehlern: Verwende On Error-Anweisungen, um sicherzustellen, dass DisplayAlerts immer wieder auf True gesetzt wird, auch wenn ein Fehler auftritt.

FAQ: Häufige Fragen

1. Was bedeutet Application.DisplayAlerts = False? Dieser Befehl unterdrückt alle Warnmeldungen in Excel, sodass du Dateien schließen oder Aktionen ausführen kannst, ohne dass eine Bestätigungsaufforderung angezeigt wird.

2. Kann ich DisplayAlerts in einer Userform verwenden? Ja, du kannst Application.DisplayAlerts auch in Userforms verwenden, um Warnmeldungen beim Schließen oder Speichern von Daten zu steuern.

3. Warum wird die Speichermeldung nicht unterdrückt? Wenn die Eigenschaft Save des Workbooks auf False gesetzt ist oder DisplayAlerts nicht korrekt implementiert ist, kann es zu dieser Meldung kommen. Stelle sicher, dass der Code korrekt ausgeführt wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige