Mehrere Dateien mit VBS

  • #1
S

SchmditMarco

Guest
Guten Morgen zusammen,

ich hätte da ein kleines Problemchen. Wie kann ich eine unbegrenzte Anzahl an Dateien in einem bestimmten Ordner via VBScript ansprechen und danach mit ihnen arbeiten? (Sollen alle kopiert werden)

Gruß, Marco
 
  • #2
Ich nochmal...Ich habe das Problem jetzt behoben, aber wenn ich die Dateien kopieren will, erhalte ich die Fehlermeldung Erlaubnis verweigert. Wenn ich ein Datei.Close setze erhalte ich Das Objekt unterstützt diese Eigenschaft nicht. Was tun?

Option Explicit

Dim objWshNetwork 'Netzwerk Objekt
Dim objWshShell 'Shell Objekt
Dim objFso 'File System Objekt
Dim objArgs 'Argumente Objekt
Dim objEnv 'Umgebungs Objekt
Dim objRegEx 'Regulärer Ausdruck

Set objWshNetwork = CreateObject(WScript.Network)
Set objWshShell = CreateObject(WScript.Shell)
Set objFso = CreateObject(Scripting.FileSystemObject)
Set objArgs = WScript.Arguments
Set objEnv = objWshShell.Environment(Process)
Set objRegEx = New RegExp

'_____________________________________________________________________

Dim Ordner, OrdnerOld, Datei, Erstelldatum, Datum_Akt, Diff, Dateiname, Quelle


Set Ordner = objFso.GetFolder(D:\Daten\Drehwinkel)
Set OrdnerOld = objFso.GetFolder(D:\Daten\Drehwinkel\Old)
'Datei = objFso.GetFile(D:\Daten\Drehwinkel\ & Dateiname)
'Datum_Akt = Now
'Erstelldatum = Datei.DateCreated
'Diff = Now - Datei.DateCreated
'MsgBox Diff

For Each Datei in Ordner.Files
Quelle = Datei.Name
MsgBox quelle
Datum_Akt = Now
Erstelldatum = Datei.DateCreated
Diff = Datum_Akt - Erstelldatum
Set Datei = objFso.GetFile(D:\Daten\Drehwinkel\ & Quelle)
MsgBox Datei
Datei.Close 'Die Zeile ist nur drin, weil ich dachte den Fehler defunden zu haben.
If Diff > 0.5 Then
objFso.CopyFile Datei, OrdnerOld
End If
Next
 
  • #3
Das Beispiel sollte dir alle Dateien die älter als 30Min. sind in den Ordner D:\Daten\Drehwinkel\Old kopieren.

Vorsicht, vorhandene Dateien gleichen Namens werden überschrieben.

Code:
OrdnerOld = D:\Daten\Drehwinkel\Old\
Set objFS = CreateObject(Scripting.FileSystemObject)
Set Ordner = objFS.GetFolder(D:\Daten\Drehwinkel)

For Each dateien In Ordner.Files
	If DateDiff(n, dateien.DateCreated, Now) > 30 Then
		objFS.CopyFile dateien , OrdnerOld
	End If
Next
 
Thema:

Mehrere Dateien mit VBS

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben