Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
On Monday, November 16, 2020 at 1:57:53 AM UTC-5, Auric__ wrote:
Michael Soyka wrote: Thank you for pointing out that each character could be checked using KeyPress. In my code I check the entire value string using the Like operator and stopped thinking right there. That said, I tried your approach and found a case where it does not validate, namely values that are pasted into the Text Box. As a separate issue, it appears that neither the paste (^V) nor backspace (^H) keys trigger a KeyPress event. This contradicts the Microsoft documentation for the KeyPress Event that suggests that they will. I suppose this could be addressed by using the KeyDown event instead since it is designed to report control characters as well as others. Then, if a value is pasted, the ^V code handler could validate the value a character at a time. Well, try something like this: Function verify(what As String) As String Dim L0, tmp As String, outp As String For L0 = 1 To Len(what) tmp = Mid$(what, L0, 1) Select Case tmp Case "0" To "9" outp = outp & tmp End Select Next verify = outp End Function ...called from the textboxes' Change events: TextBox1.Text = verify(TextBox1.Text) -- Maniacal laughter is best done privately. My approach uses the "Like" operator: tb.Value Like String(Len(tb.Value), "#") which yields a pass/fail decision but expects the user to fix it. Your solution removes the bad characters and thwarts stubborn users- better. Thanks for the conversation. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Loop for text check in three colums and set a text code based on thisin another column | Excel Programming | |||
check if any values on row | Excel Worksheet Functions | |||
Loop through column(s) to check values, perform action based on check | Excel Programming | |||
Check Box Values | Excel Programming | |||
check variable(text) with cell (text), textbox | Excel Programming |