Find the latest saved file

I would like to find the latest saved file in directory c:\test\ and compare if the same file exist in directory c:\test\old\.
mikael_luAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Mike TomlinsonHigh School Computer Science, Computer Applications, and Mathematics TeachersCommented:
Create a new project and add two textboxes and a commandbutton.

Regards,

Idle_Mind

' ************************* Code for Form1 *************************
Option Explicit

Private Sub Form_Load()
    Text1.Text = "c:\test\"
    Text2.Text = "c:\test\old\"
    Command1.Caption = "Check Files"
End Sub

Private Sub Command1_Click()
    Dim newestFile As String
    Dim newestDate As Date
    Dim curDate As Date
    Dim files As Collection
    Dim file As Variant
   
    Set files = getFilesInDirectory(Text1.Text, "*")
    If files.Count > 0 Then
        newestFile = files.Item(1)
        newestDate = FileDateTime(newestFile)
        For Each file In files
            curDate = FileDateTime(file)
            If curDate > newestDate Then
                newestDate = curDate
                newestFile = file
            End If
        Next file
        If Dir(Text2.Text, vbDirectory) <> "" Then
            If Right(Text2.Text, 1) <> "\" Then
                Text2.Text = Text2.Text & "\"
            End If
            If Dir(Text2.Text & newestFile) <> "" Then
                MsgBox "File: """ & newestFile & """ Exists in """ & Text2.Text & """"
            Else
                MsgBox "File: """ & newestFile & """ Does Not Exist in """ & Text2.Text & """"
            End If
        Else
            MsgBox "Target Directory does not exist"
        End If
    Else
        MsgBox "Directory is Empty"
    End If
End Sub

Private Function getFilesInDirectory(targetDirectory As String, filePattern As String) As Collection
    Dim fileCollection As Collection
    Dim curFile As String
   
    On Error GoTo noSuchDirectory
   
    Set fileCollection = New Collection
    ChDir targetDirectory
   
    On Error GoTo 0
    curFile = Dir(filePattern)
    Do Until curFile = ""
        fileCollection.Add curFile, curFile
        curFile = Dir()
    Loop
    Set getFilesInDirectory = fileCollection
    Exit Function
   
noSuchDirectory:
    MsgBox "Invalid Directory: " & targetDirectory
    Set getFilesInDirectory = fileCollection
End Function
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
mikael_luAuthor Commented:
Hi Idle_Mind!

Thanks for a very fine solution of my problem, I'm very happy.

Regards
Mikael_lu
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic Classic

From novice to tech pro — start learning today.