Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Abfrage nach Speichern beim Schließen verhindern

Forumthread: Abfrage nach Speichern beim Schließen verhindern

Abfrage nach Speichern beim Schließen verhindern
07.05.2002 08:48:46
Daniel Köchler
Hallo,

ich habe eine Datei in der ich beim Öffnen mittels Makro alle xls.Dateien eines Verzeichnisses jedesmal neu auslese. Daher möchte ich verhindern, dass beim Schließen dieser Datei die Frage nach dem Speichen erscheint. Ist das möglich?

Daniel

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Abfrage nach Speichern beim Schließen verhindern
07.05.2002 08:53:49
Hajo
Hallo Daniel

eine Entscheiden Sache hast Du vergessen. Soll grundsätzlich gespeichert werden oder nicht.

In VBA in DieseArbeitsmappe

wenn gespeichert werden soll ansonsten False

Gruß Hajo

Re: Abfrage nach Speichern beim Schließen verhindern
07.05.2002 08:59:12
ajk
Hallo,

wenn nicht gespeichert werden soll, versuch mal:

Application.DisplayAlerts = False 'schaltet Excel-Warnungen aus
ThisWorkbook.Close ' schließt
Application.DisplayAlerts = True 'schaltet Warnungen wieder ein


Gruß
AJK

Anzeige
Re: grundsätzlich speichern?
07.05.2002 09:25:24
Daniel Köchler
Hallo Hajo,

ich möchte folgendes: Ich als Administrator möchte schon eine Möglichkeit zum Speichern der Datei (falls ich irgendwelche Kriterien zum auslesen ändere oder so). Alle anderen sind nur Anwender, die die Datei nur zum lesen benutzen. Wenn nun ein Anwender die Datei wieder schließt, soll die Abfrage unterbleiben!

Daniel

Anzeige
Re: grundsätzlich speichern?
07.05.2002 09:28:41
Hajo
Hallo Daniel

füge in meinem Code einen Vergleich ein. Mit Benutzer.
119. Benutzernamen zu Autorisationzwecken abfragen
x1 = Environ("COMPUTERNAME")
x2 = Environ("USERNAME")
MsgBox Environ("WINDIR") ‘ Windowsinstallationsphad
Username von Netzwerkanmeldung NT
und noch viele andere schöne Informationen (statt "yyy" mal hinter ENVIRON in der Klammer Zahlen eingeben. 1 bis xx
26 Standardverzeichnis ???

oder andere Betriebsysteme
Dim BName As String
Declare Function GetUserName Lib "advapi32.dll" _
Alias "GetUserNameA" (ByVal lpBuffer As String, _
nSize As Long) As Long
Sub Benutzerfilter()
Dim Buffer As String * 100
Dim BuffLen As Long
BuffLen = 100
GetUserName Buffer, BuffLen
BName = Left(Buffer, BuffLen - 1)
If BName <> "Jürgen" Then Exit Sub
'--------------------------------------
' Andere Ausführungen, wenn Name stimmt
'--------------------------------------
End Sub
Von Jürgen Wenzel


Ich habe jetzt leider keine Zeit.

Gruß Hajo

Anzeige
Re: an AJK
07.05.2002 09:47:23
Daniel Köchler
Hallo AJK,

das funktioniert super, ABER: dann kann ich keine geöffneten Dateien mehr bearbeiten, sondern nur mehr die gesamte Excel-Sitzung schließen!

Daniel

Re: Abfrage nach Speichern beim Schließen verhindern
07.05.2002 11:26:34
Daniel Köchler
Habe die Lösung! Danke!

Sub Auto_Close()
Application.DisplayAlerts = False
ThisWorkbook.Close
Application.DisplayAlerts = True
End Sub

Danke AJK!
Daniel

Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Abfrage nach Speichern beim Schließen verhindern in Excel


Schritt-für-Schritt-Anleitung

Um die Abfrage nach "Speichern" beim Schließen einer Excel-Datei zu verhindern, kannst Du den folgenden VBA-Code verwenden. Dieser Code schaltet die Warnungen von Excel aus und schließt die Arbeitsmappe ohne Abfrage.

  1. Öffne Excel und lade die Datei, in der Du die Abfrage unterdrücken möchtest.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Wähle im Projekt-Explorer Deine Arbeitsmappe aus.

  4. Klicke mit der rechten Maustaste auf "DieseArbeitsmappe" und wähle "Code anzeigen".

  5. Füge den folgenden Code ein:

    Sub Auto_Close()
       Application.DisplayAlerts = False ' Schaltet Excel-Warnungen aus
       ThisWorkbook.Close ' Schließt die Arbeitsmappe
       Application.DisplayAlerts = True ' Schaltet Warnungen wieder ein
    End Sub
  6. Speichere die Datei und schließe den VBA-Editor.

  7. Teste das Schließen der Datei, um sicherzustellen, dass die Abfrage nicht mehr erscheint.


Häufige Fehler und Lösungen

  • Problem: Excel fragt beim Schließen trotzdem nach dem Speichern.

    • Lösung: Stelle sicher, dass der Code korrekt implementiert ist und dass Du die Datei im richtigen Format (z.B. .xlsm) speicherst, damit die Makros aktiviert sind.
  • Problem: Excel schließt sich beim Speichern und Du kannst keine geöffneten Dateien mehr bearbeiten.

    • Lösung: Der Code muss so angepasst werden, dass er nicht die gesamte Excel-Sitzung schließt, sondern nur die aktuelle Arbeitsmappe. Achte darauf, dass Du nicht den gesamten Excel-Prozess beendest.

Alternative Methoden

Falls Du keine VBA-Lösungen verwenden möchtest, kannst Du auch die Einstellungen in Excel anpassen. Gehe zu:

  1. Datei > Optionen > Speichern.
  2. Deaktiviere die Option "Beim Schließen nach dem Speichern fragen".

Diese Methode hat jedoch den Nachteil, dass sie für alle Dateien gilt und nicht nur für die spezifische Arbeitsmappe.


Praktische Beispiele

Angenommen, Du arbeitest mit einer Datei, in der Du regelmäßig Daten aus anderen Quellen importierst. Mit dem obigen VBA-Code kannst Du sicherstellen, dass beim Schließen der Datei keine Abfrage erscheint, wenn Du nicht speichern möchtest.

Sub Auto_Close()
    Application.DisplayAlerts = False
    ThisWorkbook.Close SaveChanges:=False ' Schließt ohne zu speichern
    Application.DisplayAlerts = True
End Sub

In diesem Beispiel wird die Datei ohne Speichern geschlossen, was hilfreich ist, wenn Du keine Änderungen vornehmen möchtest.


Tipps für Profis

  • Nutze Application.DisplayAlerts = False nur für spezifische Szenarien, in denen Du sicher bist, dass keine wichtigen Daten verloren gehen.
  • Implementiere eine Benutzerabfrage, um sicherzustellen, dass nur bestimmte Benutzer die Datei speichern können. Dies kannst Du mit dem Environ-Befehl in VBA realisieren, um Benutzerinformationen abzufragen.
  • Teste Deinen Code regelmäßig, um sicherzustellen, dass er in verschiedenen Szenarien funktioniert, insbesondere wenn Du Änderungen an der Datei vornimmst.

FAQ: Häufige Fragen

1. Wie kann ich die Abfrage nach dem Speichern wieder aktivieren? Du kannst die Zeile Application.DisplayAlerts = False aus Deinem VBA-Code entfernen oder auf True setzen.

2. Funktioniert dieser Code in allen Excel-Versionen? Ja, der VBA-Code sollte in den meisten modernen Excel-Versionen funktionieren, die VBA unterstützen (z.B. Excel 2010 und später).

3. Kann ich den Code so anpassen, dass er nur für bestimmte Benutzer funktioniert? Ja, Du kannst den Code erweitern, um den Benutzernamen zu überprüfen, bevor die Datei geschlossen wird. Nutze dafür den Environ-Befehl, um Benutzerinformationen zu erhalten.

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