String Parse Question

Posted on 2006-11-29
Last Modified: 2010-05-03
Hello all.  I have a file name such as this:

DSDAD FR6503 111806.txt

I need to grab the date in this the 111906.  What string parse can I use?  thanks all
Question by:sbornstein2
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
  • 3
  • 3
LVL 29

Accepted Solution

Nightman earned 125 total points
ID: 18038873
If the length and format is consistent:

strTemp = "DSDAD FR6503 111806.txt"
MsgBox (DateSerial("20" & Mid(strTemp, 18, 2), Mid(strTemp, 14, 2), Mid(strTemp, 16, 2)))

Author Comment

ID: 18038935
Is there a way I can first grab the text of 111806 and then check if it is a date?  I think this would be easiest and then just set that to a date variable I have.

Author Comment

ID: 18039083
also the file name could be different I need to work from left to right to grab it I think.  The date will always be MMDDYY.
Creating Instructional Tutorials  

For Any Use & On Any Platform

Contextual Guidance at the moment of need helps your employees/users adopt software o& achieve even the most complex tasks instantly. Boost knowledge retention, software adoption & employee engagement with easy solution.

LVL 29

Expert Comment

ID: 18039532
You could parse it out and use the IsDate(expression) - returns a boolean - if you want.
What do you mean about the file name being different? What other permutations are there?

Author Comment

ID: 18039763
well your using a mid and the beginning of that file name prior to the date can possibly be different.  I think I am going to do this which is safer.

 strFileDate = Trim(Mid(myFile, InStr(myFile, ".txt") - 6, 6))
    If Len(strFileDate) = 6 Then
        strFileDate = Left(strFileDate, 2) & "/" & Mid(strFileDate, 3, 2) & _
            "/" & Format(Right(strFileDate, 1), "00")
    End If
    'Get File Date - if invalid write to error log and skip file
    If IsDate(strFileDate) = False Then
    End If
LVL 29

Expert Comment

ID: 18039857
Your's is safer, true, but that's why I asked about the format. A fixed format makes for easier (and more efficient) code. And means that a simple answer would also do ;)


Featured Post

Enroll in June's Course of the Month

June’s Course of the Month is now available! Experts Exchange’s Premium Members, Team Accounts, and Qualified Experts have access to a complimentary course each month as part of their membership—an extra way to sharpen your skills and increase training.

Question has a verified solution.

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

If you have ever used Microsoft Word then you know that it has a good spell checker and it may have occurred to you that the ability to check spelling might be a nice piece of functionality to add to certain applications of yours. Well the code that…
Background What I'm presenting in this article is the result of 2 conditions in my work area: We have a SQL Server production environment but no development or test environment; andWe have an MS Access front end using tables in SQL Server but we a…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

734 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