kopieren von Dateien in mehrere Unterordner mit vba
Ich habe gesehen, einige Dokumentation, die auf dieser aber bisher nichts, dass ich schon in der Lage zu replizieren, die für mein spezielles Projekt.
Mein code verweist auf ein Verzeichnis mit 60 oder so Unterordnern. Innerhalb dieser Unterordner sind mehrere Dateien .PDF/.XLS etc. Der folgende code funktioniert einwandfrei, wenn die Dateien nicht eingebettet sind in die Unterordner, aber das, was ich tun müssen, ist in der Lage sein, um eine Schleife durch die Unterordner und ziehen Sie die Dateien selbst zu bewegen. Auch ist es ein Weg, um schließlich ziehen Sie Dateien durch Platzhalter Namen? Vielen Dank im Voraus für jede Hilfe.
Dim FSO As Object
Dim FromPath As String
Dim ToPath As String
Dim Fdate As Date
Dim FileInFromFolder As Object
FromPath = "H:\testfrom\"
ToPath = "H:\testto\"
Set FSO = CreateObject("scripting.filesystemobject")
For Each FileInFromFolder In FSO.getfolder(FromPath).Files
Fdate = Int(FileInFromFolder.DateLastModified)
If Fdate >= Date - 1 Then
FileInFromFolder.Copy ToPath
End If
Next FileInFromFolder
End Sub
- Haben Sie überprüft, this?
- Ich.. ich bin mir nicht sicher, wie Sie Sie zu integrieren, die mit dem, was ich bereits habe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie auch verwenden Rekursion. Ihre Ordner kann Unterordner mit Unterordner haben ...
Ich es geschafft, diesen code zu arbeiten. Es kopiert alle Ordner /Dateien und Unterordner und deren Dateien an den neuen Bestimmungsort (strTarget).
Habe ich nicht Hinzugefügt, checks and balances, wie 1) wenn die Dateien und Ordner sind bereits vorhanden. 2) wenn die Quelldateien geöffnet sind etc. Also diese Ergänzungen nützlich sein könnte.
Ich habe diesen code von Barry ' s post, aber ändern musste, damit es funktioniert für mich, also dachte ich würde teilen Sie es eh wieder.
Hoffe, dies ist nützlich wenn. . .
strPath ist die Quelle Weg und strTarget ist das Ziel Weg. beide Wege sollten am Ende in '\'
Hinweis: man muss hinzufügen, "Microsoft Scripting Runtime" unter "Extras /Verweise" für FSO zu arbeiten.
Ich hier die Lösung gefunden: