ich habe u.a. Code im Netz gefunden:
Option Explicit
Private Declare Sub OemToChar Lib "user32" Alias "OemToCharA" (ByVal StrFrom As String, ByVal StrTo As String)
Sub listFilesInPath()
Dim sPath As String, sFiles() As String, i As Long
sPath = "C:\Temp" ' === anpassen!
sFiles = getFilesInPath(sPath)
For i = LBound(sFiles) To UBound(sFiles) - 1
Debug.Print sFiles(i)
Next i
End Sub
' Liefert die Dateinamen aller passenden Dateien im angegebenen Pfads als Stringarray in Datumsreihenfolge (älteste Datei zuerst)
Private Function getFilesInPath(ByVal sPath As String, Optional ByVal sPattern As String = "*.*") As String()
sPath = IIf(Right$(sPath, 1) > Application.PathSeparator, sPath & Application.PathSeparator, sPath) & sPattern
getFilesInPath = Split(Ascii2Ansi(CreateObject("wscript.shell").exec("cmd /c dir """ & sPath & """ /b /a:-d /o:-d").StdOut.ReadAll), vbCrLf)
End Function
' Wandelt DOS-ASCII-Zeichen zu Windows-ANSI um
Private Function Ascii2Ansi(ByVal sAscii As String) As String
OemToChar sAscii, sAscii
Ascii2Ansi = sAscii
End Function
Ich möchte gerne den Code dahingehend abändern, damit die Dateien nur solange durchsucht werden (es werden ja zuerst die jüngsten Dateien durchsucht), bis das Datum der Zelle "A1" erreicht wurde.
Somit anstatt FOR mit Do While - weiß aber nicht, wie ich das mit dem Datum machen kann.
Wäre nett, wenn sich das jemand ansehen könnte - vielen Dank!
Lg,
Chris