AW: TextBox-Wert in Userform sofort anzeigen
28.11.2013 17:35:49
Martin
Also funktioniert leider nicht, hängt vielleicht aber auch damit zusammen das meine TextBoxen nicht 1,2,3 sondern "Richtige" Namen haben. Ich hab des in dem Beispiel nur zur Vereinfachung geschrieben.
Nach der Eingabe von B1a1TextBox bricht VBA mit Laufzeitfehler und "Das angegebene Objekt konnte nicht gefunden werden." ab.
Abgeändertes Beispiel von Rudi
Private Sub B1a1Textbox_Exit(ByVal Cancel As MSForms.ReturnBoolean)
B1EinzellastTextBox = B1Einzellast
End Sub
Private Sub B1Kraft1Textbox_Exit(ByVal Cancel As MSForms.ReturnBoolean)
B1EinzellastTextBox = B1Einzellast
End Sub
Private Sub B1a11Textbox_Exit(ByVal Cancel As MSForms.ReturnBoolean)
B1EinzellastTextBox = B1Einzellast
End Sub
Private Sub B1Kraft2Textbox_Exit(ByVal Cancel As MSForms.ReturnBoolean)
B1EinzellastTextBox = B1Einzellast
End Sub
Private Sub Breite1Textbox_Exit(ByVal Cancel As MSForms.ReturnBoolean)
B1EinzellastTextBox = B1Einzellast
End Sub
Function B1Einzellast()
Dim boltrue As Boolean, i As Integer
boltrue = True
For i = 2 To 6
boltrue = boltrue And IsNumeric(Controls("Wert" & i & "Textbox"))
Next
If boltrue Then
B1Einzellast = (2 * CDbl(B1a1TextBox.Value) * CDbl(B1Kraft1TextBox.Value) + _
2 * CDbl(B1a11TextBox.Value) * CDbl(B1Kraft2TextBox.Value)) / _
Breite1TextBox.Value ^ 2
Else
B1Einzellast = ""
End If
End Function
Mein Original mit "richtigen Namen"
'Wert B1EinzellastTextbox selbstständig errechnen
Private Sub B1EinzellastTextbox_Exit(ByVal Cancel As MSForms.ReturnBoolean)
B1EinzellastTextBox.Text = (2 * CDbl(B1a1TextBox.Value) * CDbl(B1Kraft1TextBox.Value) + _
2 * CDbl(B1a11TextBox.Value) * CDbl(B1Kraft2TextBox.Value)) /_
Breite1TextBox.Value ^ 2
End Sub