Fråga : Hur man begränsar användaren till stämma-i pricka/decimalkomma endast en gång i en Userform Textbox?

Hi alla, pröva förmiddag för

I att göra min egna numeriska text att boxas i VBA, sedan det finns inga (eller finns det?). För förmiddag I arbetet för närvarande på min godkännanden och problemet är: Jag önskar inte att användaren ska skriva in pricka/decimalkomman (.) mer än en gång i den Userform textboxen.

som av nu, I-förmiddagen som räcker den KeyPress händelsen av textboxen och att måste att kretsa till och med varje tecken av stränga, finner därefter byter ut därefter pricka/decimalkomman med ett tomt ("" föreställer tomt, förmiddag mig rätten?). Jag förstår inte bort varför mitt program inte tar det senast stämma-i pricker. Kan någon hjälpa mig ut? Eller finns det mycket som är bättre långt att göra detta? Tack i advance.
> för
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
" codeBody " " ctrLast för >Dim för class= " för
" klar "

Svar : Hur man begränsar användaren till stämma-i pricka/decimalkomma endast en gång i en Userform Textbox?

Är här något kodifierar:

Privat Sub TextBox1_KeyPress (ByVal KeyAscii som MSForms.ReturnInteger)
Välj fallet KeyAscii
   Case Asc (”0”) till Asc (”9”)
    Case Asc (”-”)
       Om Instr (1, Me.TextBox1.Text, ”-”) > 0 eller Me.TextBox1.SelStart > 0 därefter
           KeyAscii = 0
       Avsluta om
   Case Asc (”. ”)
       Om InStr (1, Me.TextBox1.Text, ”. ”) > 0 därefter
           KeyAscii = 0
       Avsluta om
   Case annars
       KeyAscii = 0
Avsluta valt
Avsluta suben

härifrån: http://www.cpearson.com/excel/TextBox.htm

Andra lösningar  
 
programming4us programming4us