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

Excel beenden - Fehler "Variable nicht definiert"

Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 18:42:00
stl
Hallo zusammen, ich habe folgendes Problem und hab keine Ahnung warum :)
Also ich habe eine Arbeitsmappe mit VBA-Code hinterlegt. Wenn ich nun Excel über das große X oben rechts beende, kommt die Frage "Sollen ihre Änderungen in '...' gespeichert werden?". Egal ob ich mit ja oder nein antworte, geht anschließend der VBA Editor auf mit der Fehlermeldung "Fehler beim Kompilieren: Variable nicht definiert". Wenn ich auf OK klicke markiert er mir ComboBox2 in der Befehlszeile. Wenn ich jetzt auf "zurücksetzen" klicke kommt die Fehlermeldung nochmal. Diesmal markiert er nach OK jedoch ComboBox4 in einer Befehlzeile. Klicke ich jetzt nochmal auf "zurücksetzen" dann schließt Excel wie gewollt komplett. Wenn ich statt auf "schließen" (großes X oben rechts) auf "Fenster schließen" (kleineres x unter dem großen X oben rechts) klicke, beendet er mir die Arbeitsmappe ohne Fehlermeldung. Wenn ich danach Excel schließe ist auch alles wie gewollt.
Also nun die Frage: Warum bringt Excel beim schließen über "schließen" die Meldungen, dass die Variablen "ComboBox2" und "ComboBox4" nicht definiert sind? Weil selbst bei "Option Explicit" muss ich ComboBoxen gar nicht seperat definieren.
Hat jemand einen Tip bzw. kann mir helfen?
Gruß
stl

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

Betreff
Datum
Anwender
Anzeige
AW: Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 18:56:03
Tino
Hallo,
die einfachste aber nicht saubere Lösung ist, entferne überall
Option Explicit
damit wird die Deklarierung auf nicht erforderlich gesetzt.
oder Deklariere deine Daten
Gruss
Tino

AW: Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 19:08:00
stl
Hallo, ich habe überall "Option Explicit" drin und will die Option auch nicht entfernen da ich zig 100 Variablen drin habe und sonst den Überblick verliere was nun definiert ist und was nicht bzw. ob variablen evtl doppelt vergeben sind. Ich wüsste auch gar nicht wie man eine normal erzeugte ComboBox definieren soll/muss, da das ja normal selbst bei "Option Explicit" nicht erforderlich ist. Bei den ComboBoxen 1 und 3 gibt es komischerweise keine Probleme. Eben nur mit den ComboBoxen 2 und 4 und das auch nur wenn ich Excel direkt komplett schließen will. Also muss es doch einen Trick geben warum eben diese beiden ComboBoxen diesen Fehler hervorrufen. Denn wie schon gesagt - wen ich erst das fenster schließe und danach erst Excel, gibts ja auch kein Problem. Aber ich will das Problem halt verstehen weil nicht (zumindest nicht für mich) offensichtlich ist, warum das Problem überhaupt besteht.
gruß
stl

Anzeige
AW: Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 19:23:00
Tino
Hallo,
du kannst im VBA Editor unter Debuggen - Kompilieren... ausführen
Sollte nun zu den Variablen gehen, die nicht Deklariert der fehlerhaft sind!
Dies so oft wiederholen bis kein Fehler mehr ausgegeben wird.
Gruss
Tino

AW: Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 19:39:00
Daniel
Hi
ohne beispieldatei lässt sich da schwer was sagen.
Schau mal nach, ob irgendwelcher Code im Modul "DieseArbeitsmappe" unter dem Makro "Worbook_BeforeClose" oder "Workbook_BeforeSave" dafür verantwortlich sein kann.
des weiteren wäre zu prüfen, ob du überhaupt diese Comboboxen hast, und warum sie in dem Code verwendet werden.
Wenn es diese Comboboxen nicht gibt, gibts natürlich eine Fehlermeldung.
und auch wenn es sie gibt, kann es sein, daß sie je nach Position des Codes nicht ausreichend angesprochen werden, dh. es fehlt das übergeordnete Objekt (TABELLE1.Combobox1 oder Userform1.Combobx1)
aber wie gesagt, ohne Beispieldatei alles nur vermutungen.
Gruß, Daniel.
PS: lass das OPTION EXPLICIT auf jeden Fall drin

Anzeige
AW: Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 20:36:49
stl
Hallo, ich muss noch dazu sagen, dass es kein Problem mit dem Programm selbst gibt. Das Programm inkl. der ComboBoxen läuft genau so wie es will. Es geht lediglich um die Fehlermeldungen die kommen, wenn ich Excel schließen will. Die ComboBoxen die angeblich nicht definiert sind arbeiten im normalen Betrieb ganz ohne Probleme. Die Berechnungen mit den Werten der ComboBoxen fuktionieren ebenfalls so wie sie sollen. Das Problem ist halt wirklich, dass je nachdem wie ich Excel bzw. die Arbeitsmappe schließe eine Fehlermeldung erscheint oder nicht. Und eben das muss ja irgend einen Grund haben. Ich verstehe halt nicht warum es diese Fehlermeldung gibt wenn ich Excel direkt schließen will und es keine Fehlermeldung gibt, wenn ich erst die Arbeitsmappe und dann erst Excel schließe. Das will mir so halt nicht einleuchten. Anbei noch mal ein Codeschnipsel. Nach der Fehlermeldung markiert er dann das ComboBox2 nach dem "if":

Private Function TabelleB2_Func(ByVal ze) As Double
If ComboBox2.Value = 0 Then
vm = 0
Iv = 0
q = 0
v = 0
ElseIf ComboBox2.Value = 1 Then
zmin = 2
If zmin 


Anzeige
AW: Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 20:50:00
Tino
Hallo,
lade mal die Datei hoch.
Gruss
Tino

AW: Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 20:54:54
Daniel
Hi
du solltets mal klären, warum diese Function überhaupt beim Schließen aufgerufen wird.
Check mal die Event-gesteuerten Makros
Gruß, Daniel

AW: Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 22:06:00
stl
Hallo, ich habe derzeit eine vorübergehend akzeptable Lösung gefunden.
Ich habe keine Ahnung warum, aber mit dem nachfolgenden Code kommt es nicht zu den besagten Fehlermeldungen. Zwar bleibt Excel dann noch offen, aber das Workbook wird ohne murren direkt und ohne Fehlermeldung geschlossen .
Wenn jemand eine Lösung für mein zuvor beschriebenes Problem weiß oder die Ursache für die Fehlermeldungen kennt, ist aufgefordert sich zu melden :)
Gruß

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Close SaveChanges:=True
End Sub


Anzeige
AW: Excel beenden - Fehler "Variable nicht definiert"
10.11.2007 22:22:00
Gerd
Hallo,
siehe Beitrag von Tino.
Gruß Gerd

AW: Excel beenden - Fehler "Variable nicht definiert"
11.11.2007 10:37:00
Tino
Hallo,
ja kommt daher es gibt zwei dieser Close, einmal ausgeführt durch drücken von "X" und ein zweites mal
durch dein ActiveWorkbook.Close!
mach es so:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me.Saved = True 'schliesen ohne zu Speichern
'oder
ThisWorkbook.Save 'vor dem schliesen Speichern
'oder Lösche dieses Ereignis ganz und es kommt eine Abfrage ob die änderung gespeichert werden  _
soll!
End Sub


Gruss
Tino

35 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige