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

Forumthread: Datei schließen über "X" verhindern

Datei schließen über "X" verhindern
11.09.2006 14:39:07
Torge
Hallo,
kann jemand helfen?
Beispieldatei liegt bei. https://www.herber.de/bbs/user/36580.xls
Möchte gern das Beenden mit dem Speichern unter Dialog machen, d.h. wenn Speichern unte erscheint Datei unter neuen Namen speichern lassen, bei abbrechen soll die Datei aber nicht geschlossen werden, sondern offen bleiben und eben nur bei speichern unter neuen Namen geschlossen werden dürfen.
Verwende folgenden Code bei betätigen des Button:
Public

Sub schliessen()
bolbeenden = True
If Workbooks.Count = 1 Then Application.Quit Else ThisWorkbook.Close
End Sub

Vielleicht kann jemand helfen.
Vielen Dank
Gr. Torge
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei schließen über "X" verhindern
11.09.2006 17:21:52
Herbert
Hi,
das ist aber kein guter Stil, meine Leute würden mir sowas um die Ohren
hauen. Der User muss die Möglichkeit haben abzubrechen.
mfg Herbert
AW: Datei schließen über "X" verhindern
11.09.2006 17:54:53
Torge
Hallo Herbert,
vielen Dank für Dein Tipp. Ja, ein abbrechen soll auch möglich sein aber dies realisiere ich über ein beenden Button, der die Datei ohne speichern schließt. Hab ich vergessen in die Beispieldatei einzufügen. Mir geht es auch wirklich nur um den Button zum Speichern unter und dem verhindern des schließens der Datei über das rote bzw. schwarze Kreutz oben rechts in Excel. Alles sollte nur mit Button erfolgen, da in meiner Originaldatei auch die Menüsleiste ausgeblendet ist und nur die o.b. beschriebenen Möglichkeiten des schließens der Datei über das Kreutz ausgeschlossen werden soll. Dafür die Button.
Gr. Torge
Ich lass die Frage noch offen.
Anzeige
AW: Datei schließen über "X" verhindern
11.09.2006 18:12:31
Herbert
Hi,
in einem Standardmodul(z.B. Modul1):
Option Explicit
Public so_nicht As Boolean
Sub schliessen()
so_nicht = False
ThisWorkbook.Close
End Sub
Im Code von "DieseArbeitsmappe":
Option Explicit

Private Sub Workbook_Activate()
so_nicht = True
End Sub


Private Sub Workbook_BeforeClose(Cancel As Boolean)
Cancel = so_nicht
If so_nicht Then
MsgBox "Oh no!"
End If
End Sub

mfg Herbert
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Datei schließen über "X" verhindern in Excel


Schritt-für-Schritt-Anleitung

Um das Schließen einer Excel-Datei über das "X" zu verhindern, kannst du den folgenden VBA-Code verwenden. Dieser Code sorgt dafür, dass die Datei nur durch einen speziellen Button geschlossen werden kann.

  1. Öffne deine Excel-Datei.

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

  3. Füge ein neues Modul hinzu:

    • Rechtsklick auf VBAProject (deineDatei.xls) > Einfügen > Modul.
  4. Kopiere den folgenden Code in das Modul:

    Option Explicit
    Public so_nicht As Boolean
    
    Sub schliessen()
       so_nicht = False
       ThisWorkbook.Close
    End Sub
  5. Füge den folgenden Code in das DieseArbeitsmappe-Modul ein:

    Private Sub Workbook_Activate()
       so_nicht = True
    End Sub
    
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
       Cancel = so_nicht
       If so_nicht Then
           MsgBox "Oh no!"
       End If
    End Sub
  6. Erstelle einen Button in deiner Excel-Datei, um die schliessen-Subroutine auszuführen.

Mit diesem Code wird das Schließen der Datei über das "X" in Excel verhindert. Stattdessen kannst du nur über deinen Button die Datei schließen, was die Funktionalität deiner Anwendung sicherstellt.


Häufige Fehler und Lösungen

  • Fehler: "Excel kann nicht geschlossen werden."

    • Lösung: Überprüfe, ob der Code korrekt eingefügt wurde und dass der Button richtig verknüpft ist. Wenn der Code nicht ausgeführt wird, kann es sein, dass die Makros deaktiviert sind.
  • Fehler: Die Datei schließt trotzdem über das "X".

    • Lösung: Stelle sicher, dass der Code in DieseArbeitsmappe korrekt implementiert ist und dass so_nicht auf True gesetzt wird, wenn die Arbeitsmappe aktiviert wird.

Alternative Methoden

Eine andere Methode, um das Schließen über das "X" zu verhindern, besteht darin, die Eigenschaften der Arbeitsmappe zu ändern. Dazu kannst du die Arbeitsmappe im "Schutz"-Modus öffnen und die Schaltflächen deaktivieren, die das Schließen ermöglichen.

  1. Gehe zu Datei > Informationen > Arbeitsmappe schützen.
  2. Wähle die entsprechenden Optionen aus, um den Zugriff zu steuern.

Diese Methode ist jedoch weniger flexibel als die Verwendung von VBA, da sie nicht die gleiche Kontrolle über das Schließen der Datei bietet.


Praktische Beispiele

Nehmen wir an, du hast ein Arbeitsblatt, das sensible Daten enthält. Du möchtest sicherstellen, dass die Benutzer die Datei nur über einen bestimmten Button schließen können. Mit dem oben genannten VBA-Code kannst du dies einfach umsetzen.

Ein Beispiel könnte eine Anwendung zur Verwaltung von finanziellen Daten sein, wo du sicherstellen möchtest, dass die Datei nicht versehentlich geschlossen wird, während die Benutzer noch arbeiten.


Tipps für Profis

  • Stelle sicher, dass du die Datei regelmäßig speicherst, da das Schließen über "X" verhindert wird.
  • Verwende den Workbook_BeforeClose-Ereignis, um Warnmeldungen oder zusätzliche Überprüfungen hinzuzufügen, bevor die Datei geschlossen wird.
  • Optimiere den Code, indem du zusätzliche Bedingungen hinzufügst, um die Benutzererfahrung zu verbessern.

FAQ: Häufige Fragen

1. Wie kann ich das Schließen der Datei über das "X" verhindern, ohne VBA zu verwenden? Du kannst die Datei im Schutzmodus öffnen und die Schaltflächen zum Schließen deaktivieren. Dies ist jedoch weniger flexibel.

2. Was passiert, wenn ich die Makros deaktiviere? Wenn die Makros deaktiviert sind, wird der Code nicht ausgeführt, und die Datei kann wie gewohnt über das "X" geschlossen werden. Stelle sicher, dass du die Makros aktivierst, um die Funktionalität zu nutzen.

3. Wie kann ich sicherstellen, dass meine Benutzer die Datei nicht versehentlich schließen? Implementiere klare Anweisungen oder Warnmeldungen im Code, um die Benutzer darüber zu informieren, dass das Schließen über das "X" nicht empfohlen wird.

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