Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Prozenteingabe in Textfeld

Forumthread: Prozenteingabe in Textfeld

Prozenteingabe in Textfeld
04.12.2005 10:03:22
gert
Hallo Excel-User,
Ich habe ein Textfeld.
Dort soll eingegeben werden 0,9.
Ergebnis = 90,00%
Folgende Programmierung liegt dem Feld zugrunde:

Private Sub textbox172_AfterUpdate()
Dim datenlager As String
'Komma und Tausenderpunkte setzen. Prüfen obe Feld leer
Select Case Len(TextBox172.Value)
Case 0
TextBox172 = 0
End Select
datenlager = Format(TextBox172.Value, "##,##0.00 %")
TextBox172.Value = datenlager
End Sub

Was ist falsch.
Viele Grüsse
Gert
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Prozenteingabe in Textfeld
04.12.2005 10:56:16
Ramses
Hallo
verwende statt des "AfterUpdate"-Ereignisses, das "Exit"-Ereignis
Private Sub TextBox172_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    On Error Resume Next
    If Not IsNumeric(CDbl(Me.TextBox172)) Then
        If Me.TextBox172 = "" Then Exit Sub
        MsgBox "Unzulässige Eingabe"
        Me.TextBox172 = ""
        Cancel = True
        Exit Sub
    End If
    On Error GoTo 0
    'Komma und Tausenderpunkte setzen. Prüfen obe Feld leer
    Select Case CDbl(Me.TextBox172.Value)
        Case Is <= 0.1
            Me.TextBox172.Text = CDbl(Me.TextBox172) * 100 & " %"
        Case Is <= 1
            Me.TextBox172.Text = CDbl(Me.TextBox172) * 10 & " %"
        Case Is >= 10
            MsgBox "Unzulässiger Prozentwert"
            Me.TextBox172 = ""
    End Select
End Sub

Gruss Rainer
Anzeige
AW: Prozenteingabe in Textfeld
04.12.2005 11:12:03
gert
Hallo Rainer,
Aufgrund Deines Vorschlages gebe ich im Textfeld 0,9 ein.
Das Textfeld gibt mir 9% zurück. Richtig wäre 0,9%
Übrigens in die Tabelle schreibe ich mit:
Range("d31") = TextBox172
zurück.
Dort sollte 0,09 stehen.
Kannst Du mir nochmals helfen.
Viele Grüsse
Gert
Anzeige
AW: Prozenteingabe in Textfeld
04.12.2005 11:14:39
Hajo_Zi
Hallo Gert,
0,9 entspricht 90%
0,09 entspricht 9%
Was Nun?


AW: Prozenteingabe in Textfeld
04.12.2005 11:27:40
gert
Hallo Hajo,
Das Thema Eingabefeld habe ich gelöst.
Im Sheet steht jedoch ein falscher Wert.
Folgende Befehlskette habe ich verwendet:

Private Sub TextBox172_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error Resume Next
If Not IsNumeric(CDbl(Me.TextBox172)) Then
If Me.TextBox172 = "" Then Exit Sub
MsgBox "Unzulässige Eingabe"
Me.TextBox172 = ""
Cancel = True
Exit Sub
End If
On Error GoTo 0
'Komma und Tausenderpunkte setzen. Prüfen obe Feld leer
Select Case CDbl(Me.TextBox172.Value)
Case Is <= 0.1
Me.TextBox172.Text = Format(CDbl(Me.TextBox172) * 10, "##,##0.00") & " %"
Case Is <= 1
Me.TextBox172.Text = Format(CDbl(Me.TextBox172) * 1, "##,##0.00") & " %"
Case Is <= 10
Me.TextBox172.Text = Format(CDbl(Me.TextBox172), "##,##0.00") & " %"
Case Is >= 100
MsgBox "Unzulässiger Prozentwert"
Me.TextBox172 = ""
End Select
Range("d31") = TextBox172
TextBox172.BackColor = &H80000005
End Sub

Im Feld D31 steht als Textfeld 0,90%. Hier soll jedoch eine Zahl 0,009 stehen.
Wie muß die Textbox172 in die Tabelle zurückgeschrieben werden?
Viele Grüsse
Gert
Anzeige
AW: Prozenteingabe in Textfeld
04.12.2005 11:33:51
Ramses
Hallo
Anstelle von
Range("d31") = TextBox172
verwendest du
Range("D31") = (Left(Me.TextBox172.Value, Len(Me.TextBox172.Value) - 2) * 1) / 100
Gruss Rainer
AW: Prozenteingabe in Textfeld
04.12.2005 11:36:38
gert
Hallo Ramses,
super. es hat alles geklappt.
noch ein schönes Wochenende
Gruss
Gert
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige