Vraag : Hoe te om gebruiker zeer belangrijk-in punt/decimaal punt in een Userform Textbox slechts eenmaal te beperken?

Hallo iedereen,

ik probeer om mijn eigen numeriek tekstvakje in VBA te maken aangezien er niets zijn (of is daar?). Ik werk momenteel aan mijn bevestigingen en het probleem is: Ik wil niet de gebruiker de punt/het decimale punt (.) ingaan meer dan eens in Userform Textbox.

vanaf nu, overhandig ik de gebeurtenis KeyPress van textbox, die door elk karakter van het koord moeten van een lus voorzien, dan vervangt de vondst dan de punt/het decimale punt met een spatie ("" vertegenwoordigt spatie, ben het recht van I?). Ik begrijp niet waarom mijn programma niet recentst sluiten-in punt verwijdert. Kan iedereen me uit helpen? Of is er een veel betere manier om dit te doen? Dankt vooraf.
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
Dim ctrLast als Geheel
        Schemerige tempSal als Koord

        tempSal = Me.txt EmpSal.Value

        'lijn die van eind van koord beginnen; vervang recentste die punt/decimal punt binnen door gebruiker wordt gesloten met spatie
        Voor ctrLast = (tempSal) Len Aan 1 Stap -1
            Als Medio (tempSal, ctrLast, 1) = „.“ Dan
                tempSal = vervang (tempSal, Medio (tempSal, ctrLast, 1), "", ctrLast, 1)
                Uitgang voor
            Eind als
        Volgende ctrLast

        Me.txt EmpSal.Value = tempSal

Antwoord : Hoe te om gebruiker zeer belangrijk-in punt/decimaal punt in een Userform Textbox slechts eenmaal te beperken?

Hier is één of andere code:

Privé SubTextBox1_KeyPress (ByVal KeyAscii als MSForms.ReturnInteger)
Selecteer Geval KeyAscii
   Geval Asc („0“) aan Asc („9“)
    Geval Asc („-“)
       Als Instr (1, Me.TextBox1.Text, „-“) > 0 of Me.TextBox1.SelStart > 0 toen
           KeyAscii = 0
       Eind als
   Geval Asc („. “)
       Als InStr (1, Me.TextBox1.Text, „. “) > 0 toen
           KeyAscii = 0
       Eind als
   Geval anders
       KeyAscii = 0
Uitgezocht eind
Sub van het eind

van hier: http://www.cpearson.com/excel/TextBox.htm

Andere oplossingen  
 
programming4us programming4us