We help IT Professionals succeed at work.
Get Started

Allow a decimal place for  whole numbers

Fordraiders
Fordraiders asked
on
83 Views
Last Modified: 2016-08-31
I had this question after viewing field to allow only numerics with one exception.

Access 2010 vba  keypress event and after update event

I have an unBound Textbox that allows only numeric characters, but also negative sign, plus sign, and a decimal.

The goal is that no matter what type of number is entered it keeps decimals and then tags a % sign at the end.

What I need:
If a person happens to enter  25%  or just 25
I need the result to add .00 for whole numbers
25%  becomes  25.00%
and
25 becomes  25.00%

Right now if i enter  22.22 it gives me correctly  22.22%
If i enter  22.00  it takes away the   .00   to 22%
I need it to keep 22.00 if its entered
AND ALSO
22% becomes  22.00 %

Current Code:
Private Sub ROLLING_12_GP_AfterUpdate()

' if they backspace and leave "" or null thats ok
If Len(Nz(Me.ROLLING_12_GP, "")) = 0 Then
   Exit Sub
End If
' temp take out the % (keypress does not allow) if they enter it
Me!ROLLING_12_GP = Replace([ROLLING_12_GP], "%", "")
' now add it back for
Me!ROLLING_12_GP = Me.ROLLING_12_GP.Value / 100 * 100 & "%"

' delete the % if they leave it
If Me!ROLLING_12_GP = "%" Then
   Me!ROLLING_12_GPP = ""
End If
End Sub


Private Sub ROLLING_12_GP_KeyPress(KeyAscii As Integer)
Select Case True 'always your best friend
    Case (KeyAscii > 47 And KeyAscii < 58)
    Case (KeyAscii = 8)
    Case (KeyAscii = 43)
    Case (KeyAscii = 45)
    Case (KeyAscii = 46)
    Case Else
        MsgBox ("You Must Enter Numbers Only!")
        KeyAscii = 0
        Exit Sub
End Select
KeyAscii = KeyAscii
End Sub

Open in new window



Thanks
fordraiders
Comment
Watch Question
CERTIFIED EXPERT
Most Valuable Expert 2014
Commented:
This problem has been solved!
Unlock 1 Answer and 7 Comments.
See Answer
Why Experts Exchange?

Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy
Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif
Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster
CTP, Sr Infrastructure Consultant
Ask ANY Question

Connect with Certified Experts to gain insight and support on specific technology challenges including:

  • Troubleshooting
  • Research
  • Professional Opinions
Did You Know?

We've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE