Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CheckBox
BildScreenshot zu CheckBox CheckBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Label
BildScreenshot zu Label Label-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema MultiPage
BildScreenshot zu MultiPage MultiPage-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema RefEdit
BildScreenshot zu RefEdit RefEdit-Seite mit Beispielarbeitsmappe aufrufen

Absturz beim Schließen von Userform

Betrifft: Absturz beim Schließen von Userform von: BS
Geschrieben am: 07.11.2020 22:49:01

Hallo

komm leider bei einem Problem nicht weiter. - an alle Profis, Bitte um Unterstützung

Anbei die Datei zum Problem: https://www.herber.de/bbs/user/141396.xlsm


PROBLEM: Excel stürzt beim Schließen eines Userforms ab.


Vorweg - die Programmierung ist ein "Murks" und entspricht sicher nicht dem was man als Programmierer gewohnt ist.

Das Makro soll bei der Vergleich Funktion mit Indirekt unterstützen. Es stellt anhand der Informationen aus den Userform die Formel zusammen und schreibt sie dann in die aktive Zelle.

Wenn man nur die Vergleichs-Formel verwendet (erste Seite Multipage) funktioniert es, auch wenn man danach die Userform schließt.

Beim Schreiben der Formel mit Indirekt (zweite Seite Multipage) tritt dann der Fehler auf. Wenn man die Userform nicht unloadet sieht man, dass auch die Formel mit Indirekt funktioniert, man hängt aber in der Userform. Man kann im Sheet sehen, dass die Formel richtig erstellt wird und auch richtig rechnet.

Solange das Userform nicht geschlossen wird funktioniert die Formel.

Beim Schließen vom Userform egal ob mit Unload oder X stürzt Excel dann ab.

Möglicherweise hänge ich noch in einem der RefEdit Steuerungselemente fest.

Bitte um Tipps

Danke.

Betrifft: AW: Absturz beim Schließen von Userform
von: Hajo_Zi
Geschrieben am: 08.11.2020 07:35:16

ich habe die Userform gestatrtet und geschloßen ohne Problkeme.
Vielleicht sollte man schreibenb was man machen muss um den Fehler zu simulieren?
Ich investiere keine Zeit um das zu suchen.

GrußformelHomepage

Betrifft: AW: Absturz beim Schließen von Userform
von: BS
Geschrieben am: 08.11.2020 12:23:43

Hallo Hajo_Zi
Danke für die rasche Antwort und Entschuldige die unzureichende Information
Ich lade das Excel File nochmals hoch und habe jetzt ScreenShots hineingehängt um zu zeigen wie es befüllt sein muss, damit der Absturz beim Schließen des Userforms erfolgt.
https://www.herber.de/bbs/user/141399.xlsm
BS

Betrifft: AW: Absturz beim Schließen von Userform
von: Hajo_Zi
Geschrieben am: 08.11.2020 14:00:59

ich kann Dir Leider nicht helfen, die Userform ist so klein, da kann ich trotz Brille nichts lesen.
Ich bin dann raus.
Viel Erfolg noch.

Gruß Hajo

Betrifft: AW: Absturz beim Schließen von Userform
von: Firmus
Geschrieben am: 08.11.2020 18:57:43

Hi Martin,

dort kneift es:
Private Sub Formelschreiben_Click()
    Dim SchreibFormel As String
    Call Clipboard_Clear
    SchreibFormel = "=" & Replace(TxtFormel, ",", ";")
    RefEdit1 = ""
    RefEdit2 = ""
    RefEdit2 = ""
    Vergleiche.MultiPage1.Value = 0
    FormelZelle = "D1"
    Range(FormelZelle).Formula2Local  = SchreibFormel 'FormulaLocal
    Stop
    Unload Me
    
Die Variable FormelZelle ist leer.
Es kommt die Meldung "Laufzeitfehler 1004"
Die Methode RANGE für das Object "_Global" ist fehlgeschlagen.

Wie gefunden: viele Debug-stops + Brille (Überwachungsfenster)

Gruß,
Firmus

Betrifft: AW: Absturz beim Schließen von Userform
von: BS
Geschrieben am: 09.11.2020 01:47:43

Vielen Dank Firmus

Bei mir hat die Variable FormelZelle einen Bezug in Textform enthalten. (mit MsgBox kontrolliert und dann hat es mit der MsgBox auf einmal funktioniert)

Ich habe vor dem Schreiben der Formel Sleep 100 hineingesetzt und jetzt stürzt es nicht mehr ab.
Private Sub Formelschreiben_Click()
    Dim SchreibFormel As String
    Call Clipboard_Clear
    SchreibFormel = "=" & Replace(TxtFormel, ",", ";")
    RefEdit1 = ""
    RefEdit2 = ""
    RefEdit2 = ""
    Vergleiche.MultiPage1.Value = 0
   'MsgBox FormelZelle
    Sleep 100
    Range(FormelZelle).Formula2Local = SchreibFormel 'FormulaLocal
    Sleep 100
    Unload Me
Jedenfalls hilft die Sleep "Bremse". Wieso - keine Ahnung.

Deine Antwort hat mir sehr geholfen.
Danke dafür
BS

Beiträge aus dem Excel-Forum zum Thema "Absturz beim Schließen von Userform"