23.05.2024, 17:01
Hallo Gemeinde,
ich bräuchte bitte wieder einmal euer Hilfe.
Ich habe eine UserForm mit der ich Berechnungen durchführe.
Das funktioniert soweit.
In TextBox1 (w5) und Textbox2 (x5) und eine Textbox3 (ab5) für das Ergebnis.
Nun will ich mit einer MsgBox den "Debuggen Fehler" verhindern, falls die Textbox1 leer ist bzw. übersprungen wurde und nur in Textbox2 ein Wert geschrieben wurde.
ich dachte mir, dass der Eintrag in Textbox2 gelöscht wird und der Focus auf Textbox1 zur Eingabe geht.
und dann erst wenn in beiden Boxen was drin steht, es mit der Rechnerei weiter geht.
so wäre einer meiner zig versuche die leider nicht funktionieren
leider finde ich nicht die passende Lösung und kann auch den Code nicht entsprechend umschreiben
Wäre schön, wenn mir jemand bei meinem Vorhaben helfen könnte ?
Vielen Dank schon mal im voraus
ich bräuchte bitte wieder einmal euer Hilfe.
Ich habe eine UserForm mit der ich Berechnungen durchführe.
Das funktioniert soweit.
In TextBox1 (w5) und Textbox2 (x5) und eine Textbox3 (ab5) für das Ergebnis.
Nun will ich mit einer MsgBox den "Debuggen Fehler" verhindern, falls die Textbox1 leer ist bzw. übersprungen wurde und nur in Textbox2 ein Wert geschrieben wurde.
ich dachte mir, dass der Eintrag in Textbox2 gelöscht wird und der Focus auf Textbox1 zur Eingabe geht.
und dann erst wenn in beiden Boxen was drin steht, es mit der Rechnerei weiter geht.
so wäre einer meiner zig versuche die leider nicht funktionieren
Code:
Private Sub x5_Change()
If Range("w5").Text = "" Then
MsgBox "Eingabe fehlt? hier muss was eingegeben werden!"
ElseIf Range("x5").Text = "" Then
Range("x5").Text = "" 'ClearContents
With Me.w5
.SetFocus
.SelStart = 0
.SelLength = Len("0")
End With
End If
If IsNumeric(x5.Text) Then
ab5.Text = Format((CDec(w5.Text) * CDec(x5.Text)), "0.00")
End If
Call rechne
End Sub
leider finde ich nicht die passende Lösung und kann auch den Code nicht entsprechend umschreiben
Wäre schön, wenn mir jemand bei meinem Vorhaben helfen könnte ?
Vielen Dank schon mal im voraus