Assuming your problem is with finding the latest file based on the timestamp in the name, try something like this:
Private Shared Function ExtractTimestamp(ByVal filePath As String) As DateTime
Dim fileName As String = IO.Path.GetFileNameWithoutExtension(filePath)
If fileName.Length < 19 Then Return DateTime.MinValue
Dim result As DateTime
Dim value As String = fileName.Substring(fileName.Length - 19)
DateTime.TryParseExact(value, "dd-MM-yyyy_HH-mm-ss", Nothing, DateTimeStyles.None, result)
Return result
End Function
Private Shared Function FindNewestFile(ByVal folderPath As String, ByVal baseFileName As String) As String
Dim fileSpec As String = baseFileName & "??-??-????_??-??-??.xls"
Return IO.Directory.EnumerateFiles(folderPath, fileSpec).
OrderByDescending(Function(filePath) ExtractTimestamp(filePath)).
ThenByDescending(Function(filePath) IO.File.GetLastWriteTimeUtc(filePath)).
FirstOrDefault()
End Function
Private Sub Label1_Click()
Dim myPath As String = "D:\Data\Folders\"
Dim filePath As String = FindNewestFile(myPath, "File_Flt")
If filePath Is Nothing Then
MessageBox.Show("No files found to import.")
Return
End If
...