Questione : Come limitare soltanto una volta utente chiave-nel puntino/al punto decimale in una casella di testo di Userform?

Ciao tutto,

che sto provando a fare la mia propria casella di testo numerica in VBA poiché non ci ne sono (o è ci?). Attualmente sto lavorando alle mie convalide ed il problema è: Non voglio l'utente entrare nel puntino/punto decimale (.) più di una volta nella casella di testo di Userform.

a partire da ora, sto passando l'evento di KeyPress della casella di testo, dovendo collegare attraverso ogni carattere della stringa, quindi trovo allora per sostituire il puntino/punto decimale con uno spazio in bianco ("" rappresenta lo spazio in bianco, sono io radrizza?). Non capisco perché il mio programma non rimuove il più ritardato chiud a chiave-in puntino. Può chiunque aiutarlo fuori? O è ci un senso molto migliore fare questo? Ringraziamenti in anticipo.
class= > " libero " del
> " del codeSnippet " del class= del
class= " lineNumbers " del
class= del
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
ctrLast notpretty del >Dim " del class= " " di codeSnippet844381 del id= del
           
class= del

Risposta : Come limitare soltanto una volta utente chiave-nel puntino/al punto decimale in una casella di testo di Userform?

Qui è un certo codice:

Sommergibile riservato TextBox1_KeyPress (ByVal KeyAscii come MSForms.ReturnInteger)
Selezionare il caso KeyAscii
   Mettere il CSA (“0„) al CSA (“9„)
    Mettere il CSA (“-„)
       Se Instr (1, Me.TextBox1.Text, “-„) > 0 o Me.TextBox1.SelStart > 0 allora
           KeyAscii = 0
       Concluder se
   Mettere il CSA (“.")
       Se InStr (1, Me.TextBox1.Text, “.") > 0 allora
           KeyAscii = 0
       Concluder se
   Mettere altrimenti
       KeyAscii = 0
Estremità prescelta
Sommergibile dell'estremità

di qui: http://www.cpearson.com/excel/TextBox.htm

Altre soluzioni  
 
programming4us programming4us