Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 339
  • Last Modified:

Updating text in Masked edit box

I have a masked edit box where the mask is ##/## im trying to update the text of this box with the date from a string variable. I cannot get it to work, do not understand why. Please post code of how to get this to work.

txtCCExpDate.Text = OnlyNumericChars(str, Me) 'this string will have a mmdd format

0
Dalexan
Asked:
Dalexan
  • 4
  • 3
1 Solution
 
PreeceCommented:
1)  Post the code for OnlyNumericChars

2)  What are the values of str and Me?

Preece
0
 
J_K_M_A_NCommented:
Have you tried:

txtCCExpDate.Text = Format(str,"##/##")

Maybe that would work. I don't have time to test it but it is worth a shot.

J_K_M_A_N
0
 
DalexanAuthor Commented:
That doesnt work J K M A N, that is the mask though thats on the textbox. Below is the code for OnlyNumericChars, I put a msgbox after the text assignment to find out whats in OnlyNumericChars(str, Me) and I find 0609 which is what I was expecting a string with 4 digits which is a credit card expiration date.

Public Function OnlyNumericChars(ByVal OrigString As String, frmError As Form) As String
'This function will take any non Numeric characters and CHOP them off
On Error GoTo EventHandler
Dim lLen As Long
Dim sAns As String
Dim lCtr As Long
Dim sChar As String
   
    OrigString = Trim(OrigString)
    lLen = Len(OrigString)
    For lCtr = 1 To lLen
        sChar = Mid(OrigString, lCtr, 1)
        If IsNumeric(Mid(OrigString, lCtr, 1)) Then
            sAns = sAns & sChar
        End If
    DoEvents
    Next

    OnlyNumericChars = sAns

Exit Function

EventHandler:
    GStr_f_end_method = "ConvertVanity()"
    GLng_f_end_number = Err.Number
    GStr_f_end_desc = Err.Description
    GBool_ErrorFlag = True
    Call ErrHandler(frmError)
   
End Function
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
J_K_M_A_NCommented:
Try this:

txtCCExpDate.Text = Format(OnlyNumericChars(str, Me),"00/00")

The problem was it wasn't putting in the '0' in front of the 6 and the 9 in the case of '0609'

It worked here at least.

J_K_M_A_N
0
 
J_K_M_A_NCommented:
Just make sure your string that is returned is ONLY 4 chars long. Mine errors out if it is 5 or more digits unless all the first digits are 0's. Example:

txtCCExpDate.Text = Format("0609","00/00")   - This works

txtCCExpDate.Text = Format("0006089","00/00")   - This works by taking off the leading zeros but it fills it in with 60/89

txtCCExpDate.Text = Format("0106089","00/00")   - This doesn't work. It gives an error.

Good luck

J_K_M_A_N
0
 
DalexanAuthor Commented:
thanks, testing now
0
 
DalexanAuthor Commented:
That works great thanks. What a mess....
0
 
J_K_M_A_NCommented:
Glad it worked out.

Thanks for the grade!

J_K_M_A_N
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 4
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now