ich habe heute diesen KeyAscii-Code im Forumarchiv entdeckt. Sieht gut aus nur komm ich mit der Umsetzung nicht so richtig hin. Genauer gesagt ich kenne auch die KeyPress Funktion erst seit heute.
Mein Problem:
Den numerischen Textbox1 Zahlenwert moechte ich in das Tabellenblatt userforms in Zelle B29 reingeschrieben haben. Wenn ich die userform abspiele und die erste ziffer eingebe passiert nach dem ersten tastendruck nichts sichtbares, die ziffer wird irgendwo gespeichert. Beim zweiten Tastendruck wird die zuerst getippte Ziffer in B29 geschrieben. Nach drei/vier Ziffern waere der user fertig und wuerde mit nem commandobutton die etwa vierstellige Zahl bestaetigen und die userform verlassen. Es fehlt aber immer die zuletzt eigegebene ziffer... wo bekomme ich diese letzte getippte ziffer nun her oder was muss ich umschreiben oder ergaenzen?
hoffe mir kann jemand die KeyPress und diese KeyAscii funktion dazu erklaeren und meinen unten aufgefuerhten code reparieren.
Nochwas kennt vielleicht jemand den Case-Code fuer nen Punkt "." ?
vielen dank schon im voraus fuer euere hilfe!!!
viele gruesse Daniel
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 44 'Komma
Case 48 To 57 'zahlen von 1 bis 9
Case Else 'alle anderen zeichen ignorieren
KeyAscii = 0
End Select
Sheets("userforms").Select 'tabellenblatt
Range("b29").Value = TextBox1.Value 'Zielzelle im Tabellenblatt
End Sub