Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
724to728
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
724to728
724to728
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Problem mit Workbook_BeforeClose()

Problem mit Workbook_BeforeClose()
01.02.2006 11:49:19
Tobias
Hallo,
ich habe ein Problem mit der Funktion Workbook_BeforeClose().
In dieser Funktion habe ich folgenden Inhalt geschrieben:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim erg As Boolean
erg = True
erg = PruefeGanzeZeile(ActiveSheet.Range("A5:J1000"))
If erg = False Then
MsgBox "Aufgrund der Fehlereingaben kann die Anwendung nicht geschlossen werden! Bitte korrigieren!"
Cancel = True
End If
End Sub

Ich erwarte hier, dass nach der Prüffunktion bei Fehler die Meldung ausgegeben wird und die Arbeitsmappe durch Cancel = True geöffnet bleibt.
Das tut es aber NICHT!
Nach der Meldungsausgabe erscheint nach dem Schliessen dieser Sub-Funktion eine weitere zusätzliche Meldung mit folgendem Inhalt:
Sollen Änderungen in 'Datei' gespeichert werden?
Ja Nein Abbrechen
Aber mit Cancel = True sollte diese Zusatzmeldung laut Hilfe-Information (F1)nicht erscheinen, oder muss ich da noch etwas beachten, damit diese Meldung nicht mehr erscheint?
Gruss
Tobias

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem mit Workbook_BeforeClose()
01.02.2006 11:58:37
Tobias
Hallo,
noch etwas:
Ich glaube, die zusätzliche Meldung taucht immer auf, wenn man eine Änderung in einer Zelle durchgeführt hat.
Hier meine Frage, wie kann ich diese Meldung unterdrücken, auch wenn ich eine Änderung durchgeführt habe?
Gruss
Tobias
AW: Problem mit Workbook_BeforeClose()
01.02.2006 12:37:34
Andreas
Hi Tobias,
die Fehlermeldungen kannst du mit
Application.DisplayAlerts = False
unterdrücken.
Grüße
Andreas
AW: Problem mit Workbook_BeforeClose()
01.02.2006 12:51:45
Tobias
Hallo Andreas,
auch das hatte ich bereits ausprobiert.
Damit klappt es auch nicht.
Ich muss dich auf etwas besonderes hinweisen:
Ich habe eine Änderung einer Zelle durchgeführt und versucht, die Anwendung zu schliessen. Mit dieser Aktion wird die Funktion Workbook_BeforeClose gestartet.
Weil eine Änderung durchgeführt worden ist, erscheint trotz Cancel = True oder trotz Application.DisplayAlerts = False die Meldung.
Gruss
Tobias
Anzeige
AW: Problem mit Workbook_BeforeClose()
01.02.2006 12:56:44
Matthias
Hallo Tobias,
ich kann deiene Fehler zwar nicht nachvollziehen (bei mir kommt die Meldung nicht), aber versuch mal folgendes:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim erg As Boolean
erg = True
erg = PruefeGanzeZeile(ActiveSheet.Range("A5:J1000"))
If erg = False Then
MsgBox "Aufgrund der Fehlereingaben kann die Anwendung nicht geschlossen werden! Bitte korrigieren!"
Cancel = True
Me.Saved = True '<<<<NEU
End If
End Sub

Gruß Matthias
AW: Problem mit Workbook_BeforeClose()
01.02.2006 14:15:08
Tobias
Hallo Matthias,
wenigstens erscheint die Meldung nicht mehr.
ABER:
die Applikation wird trotz der "Cancel = True" geschlossen!
Das darf aber auch nicht sein!
Meine Frage an Dich:
Benutzt du die Excel-Version 10.0?
Bei mir ist die Version laut Excel-Info:
Excel 2002 (10.6713.6735) SP3
Vielleicht kannst du bei dir aufgrund der anderen Version meinen Fehler nicht nachvollziehen? Oder?
Gruss
Tobias
Anzeige
AW: Problem mit Workbook_BeforeClose()
01.02.2006 14:33:51
Matthias
Hallo Tobias,
ich habe Excel 2002 (10.6501.6626) SP3.
ich denke aber, es liegt an der Funktion PruefeGanzeZeile(). Wie lautet denn deren Code?
Gruß Matthias
AW: Problem mit Workbook_BeforeClose()
01.02.2006 15:06:48
Tobias
Hallo Matthias,
ich habe den Code gepostet unter:
https://www.herber.de/bbs/user/30562.txt
Dieser gesamte Code wurde in "DeineArbeitsmappe" geschrieben.
Sicherlich stellst du im Code fest, dass einige Vorgänge an sich "überflüssig" erscheinen, aber sie sind jedoch wegen der bestimmten Zellformatierung notwendig.
Beispielsweise sind in den Zellen der Spalten 4, 7, 8 und 9 so formatiert, dass die Zahlen stets gerundet werden.
Ich glaube nicht, dass der Fehler in der Funktion "PruefeGanzeZeile()" steht. Falls doch, dann lasse mich bitte wissen.
Gruss
Tobias
Anzeige
AW: Problem mit Workbook_BeforeClose()
01.02.2006 15:50:52
Matthias
Hallo Tobias,
mmhh... ich denke trotzdem, es liegt daran, dass während des Funktionsablaufs Zellinhalte verändert werden.
Gruß Matthias
AW: Problem mit Workbook_BeforeClose()
01.02.2006 16:17:14
Tobias
Hallo Matthias,
ja, ich hatte bereits in meiner zweiten Email erwähnt, dass ich vor der Betätigung des "X"-Buttons im rechten oberen Fenster der Applikation einen Zellinhalt geändert habe, ohne sie zu speichern.
Vor dem Schliessen der Applikation wird der gesamte Mappeninhalt mitsamt ihrer einzelnen Zellen über die Funktioin "PruefeGanzeZeile()" geprüft, ob sich Fehler darin eingeschlichen haben.
Falls ein Fehler auftreten sollte, dann wird die Fehlermeldung über MsgBox ausgegeben und ich soll dann weiterarbeiten können, um den Fehler zu beheben.
Dennoch wird mit Me.Saved = True und Cancel = True die Applikation ohne Speicherung geschlossen, obwohl der Fehler ja noch da ist.
In Fehlerfall darf die Applikation nicht geschlossen werden.
Und das ist mir bis jetzt nicht gelungen.
Gruss
Tobias
Anzeige
AW: Problem mit Workbook_BeforeClose()
01.02.2006 16:39:38
Rudi
Me.Saved = True ist falsch, das bedeutet, Excel wird mitgeteilt, dass es keine Änderungen gegeben hat.
mfg Rudi
AW: Problem mit Workbook_BeforeClose()
02.02.2006 09:01:24
Tobias
Hallo Rudi,
prima, dass du dich auch hier zu meinem Problem meldest!
Es stimmt, mit Me.Saved = True wird der Applikation mitgeteilt, dass keine Änderungen gegeben hat.
Damit sollte ja erreicht werden, dass die Meldung:
Wollen Sie die Änderungen in speichern?
Ja Nein Abbrechen
nicht erscheint.
Mein Ziel bei meinem ganzen Problem ist, dass die Applikation NICHT GESCHLOSSEN werden darf, wenn bei der Prüfung Fehler aufgetreten ist.
Die Frage ist nur, wie soll ich erreichen, dass die Applikation bei Fehler sich NICHT schliesst?
Gruss
Tobias
Anzeige
AW: Problem mit Workbook_BeforeClose()
02.02.2006 15:22:38
Rudi
Schematisch:
On Erro goto Fehler
...Code
Exit sub
Fehler:
If Err then cancel = true
end sub
mfg Rudi

85 Forumthreads zu ähnlichen Themen


Hallo Gemeinde,
bin neu hier, also erstmal Hallo! an alle.
Ich kämpfe im Moment mit folgendem Problem und finde keine Lösung:
Ich habe viele benutzdefinierte Funktionen und Prozeduren als EXCEL AddIn gespeichert. Die Benutzung aus geöffneten EXCEL-workbooks funktioniert auch wunderb...
Anzeige

Hallo,
ich habe eine CheckBox in meiner Datei, die ich gerne beim Schließen
der Datei auf False setzen möcht, sodass sich das Häkchen entfernt.
Wie geht das? Hier mein erfolgloser Versuch:
Private Sub WorkBook_BeforeClose(Cancel As Boolean) CheckBox1 = False End Sub
grüße...

hallo leute,
nachdem ich den ganzen tage recherchiert habe und nicht wirklich weiter gekommen bin, baue ich auf eure hilfe.
ich habe eine datei, welche beim schließen auf die tabelle "Start" zurück springen soll, dann soll in der tabelle "Start" in H65535, C25, C26 der wert gelöscht wer...
Anzeige

Hallo, liebe Excel-Freunde.
Ich habe bitte folgendes Problem und bitte um eure Hilfe.
Ich habe unter ’DieseArbeitsmappe’ folgenden Code: Private Sub Workbook_BeforeClose(Cancel As Boolean) ActiveWorkbook.Close savechanges:=False 'oder auch ThisWorkbook.Close savechanges:=False End S...

Ich suche einen VBA-Befehl, mit dem ich bewirken kann, dass das WorkbookBeforeClose-Makro beim Schließen der Datei NICHT gestartet wird. Gibt es sowas?Mit Dank im Voraus,
Andreas

Hallo zusammen,
weiß jemand warum der folgende Code zum Öffnen einer bestimmten Datei im
Private Sub Workbook_BeforeClose(Cancel As Boolean) Workbooks.Open Filename:="C:\Test\TESTDATEI.xls", UpdateLinks:=3 End Sub nicht funktioniert?
Gruß, Harald
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige