AW: TextBox8 - Zahl auf 2 Nachkommastellen
23.02.2016 09:42:11
fcs
Hallo Erich,
das Change-Ereignis ist hier nicht optimal, da dann nach jeder Zifferneingabe umformatiert werd. Sinnvoller ist das Exit-Ereignis (Userform) oder LostFocus (Tabellenblatt.
Außerdem muss der Textboxinhalt in eine Zahl umgewandelt werden, bevor der Inhalt formatiert und eingetragen wird.
Gruß
Franz
'Textbox auf Tabellenblatt - Code unter dem Tabellen-Modul
Private Sub TextBox1_LostFocus()
With Me.TextBox1
If .Value = "" Then
.Value = Format(0, "#,##0.00")
Else
If IsNumeric(.Value) Then
.Value = Format(CDbl(.Value), "#,##0.00")
Else
MsgBox "Eingabe muss nummerisch sein", vbOKOnly, "Eingabe " & Me.Name
.Activate
End If
End If
End With
End Sub
'Textbox in Userform - Code im Userform-Module
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
With Me.TextBox1
If .Value = "" Then
.Value = Format(0, "#,##0.00")
Else
If Numeric(.Value) Then
.Value = Format(CDbl(.Value), "#,##0.00")
Else
MsgBox "Eingabe muss nummerisch sein", vbOKOnly, "Eingabe in " & Me.Name
Cancel = True
End If
End If
End With
End Sub