Guten Morgen zusammen,
ich möchte in einem Ordner jeweils die zwei aktuellsten Dateien finden und den Dateipfad anschließend in einer Variablen speichern. In dem Ordner befinden sich zwei verschiedene Dokumente, der Name des einen beginnt immer mit Atc1 dann folgt ein Variabler Teil des Namen und endet mit .xlsx da es eine Excel Datei ist. Die andere Dokumentart beginnt mit Atc2 auch hier kommt dann ein variabler Teil und die Excel-Endung. Suche ich für beide nacheinander funktioniert es problemlos. Da ich aber den Code nicht zweimal haben möchte will ich ihn für Atc1 und Atc2 jeweils einmal in einer Schleife durchlaufen.
Mein Problem ist nun wie ich die Zählvariable i vom Syntax her richtig in den Code reinschreibe. Zum einen in der zweiten Zeile der For Schleife --> Typ = "Atci*.xlsx", damit hier das erste mal die Atc1 Dateien und beim zweiten mal die Atc2 Dateien durchsucht werden und zum anderen in den letzten beiden Zeilen der For Schleife, damit der Dateipfad der Atc1 Datei in Var1 (und für 2 entsprechend) gespeichert bzw in der MsgBox ausgegeben wird.
Vielen Dank schonmal für jede Hilfe
Grüße Lukas
Option Explicit
Dim Var1 As Variant
Dim Var2 As Variant
Sub DateiSuche()
Dim Verzeichnis As String
Dim Typ As String
Dim DateiName As String
Dim Dateiname_neu As String
Dim Zeit As Date
Dim Uebergabedatei As String
Dim i As Integer
i = 2
For i = 1 To 2
Verzeichnis = "C:\Desktop\Neuer Ordner\"
Typ = "Atci*.xlsx"
DateiName = Dir(Verzeichnis & Typ)
Dateiname_neu = DateiName
Zeit = FileDateTime(Verzeichnis & DateiName)
Do While DateiName <> ""
If Zeit < FileDateTime(Verzeichnis & DateiName) Then
Zeit = FileDateTime(Verzeichnis & DateiName)
Dateiname_neu = DateiName
End If
DateiName = Dir
Loop
Uebergabedatei = Verzeichnis & Dateiname_neu
Vari = Uebergabedatei
MsgBox "Für Atc" & i & " wurde die Datei " & Vari & " geöffnet."
Next
End Sub
|