Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Updating text in Masked edit box

Posted on 2006-06-13
8
Medium Priority
?
334 Views
Last Modified: 2010-04-30
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
Comment
Question by:Dalexan
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
8 Comments
 
LVL 12

Expert Comment

by:Preece
ID: 16898225
1)  Post the code for OnlyNumericChars

2)  What are the values of str and Me?

Preece
0
 
LVL 3

Expert Comment

by:J_K_M_A_N
ID: 16899324
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
 

Author Comment

by:Dalexan
ID: 16902185
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
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!

 
LVL 3

Accepted Solution

by:
J_K_M_A_N earned 300 total points
ID: 16903295
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
 
LVL 3

Expert Comment

by:J_K_M_A_N
ID: 16903357
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
 

Author Comment

by:Dalexan
ID: 16903387
thanks, testing now
0
 

Author Comment

by:Dalexan
ID: 16903498
That works great thanks. What a mess....
0
 
LVL 3

Expert Comment

by:J_K_M_A_N
ID: 16903640
Glad it worked out.

Thanks for the grade!

J_K_M_A_N
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

There are many ways to remove duplicate entries in an SQL or Access database. Most make you temporarily insert an ID field, make a temp table and copy data back and forth, and/or are slow. Here is an easy way in VB6 using ADO to remove duplicate row…
The debugging module of the VB 6 IDE can be accessed by way of the Debug menu item. That menu item can normally be found in the IDE's main menu line as shown in this picture.   There is also a companion Debug Toolbar that looks like the followin…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Suggested Courses

715 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question