Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1492to1496
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Dateien öffenen mit VBA und dann löschen

Dateien öffenen mit VBA und dann löschen
12.05.2016 16:21:44
Elmar
Hallo Excelexperten,
hätte ein Problem, bei dem ich trotz Forum und rumprobieren nicht weiterkomme..
Ich bekomme jede Woche (immer Dienstags)in ein Verzeichnis D:\EM\Ablage_TS etwa 100 Dateien mit unterschiedlichen Namen reingeschoben. Nun soll ein Makro eine Datei nach der anderen abarbeiten. Die Routine der Abarbeitung (mehrere Sachen daraus in eine Gesamtzusammenstellung kopieren) habe ich schon, aber ich hab das Problem, dass ich nicht alle Dateien nacheinander geöffnet bekomme (weil die Namen jede Woche wieder anders lauten)und dann die Routine läuft und wenn das fertig ist, die Datei wieder geschlossen (oder gelöscht, das ist egal, die Dateien sind alle gesichert)wird.
Wenn ich jede einzeln öffne, mein "Kopiermakro" starte und dann wieder schließe geht das ganz gut, aber eben sehr zeitaufwändig.
Hat jemand eine Idee, wie ich die Dateien geöffnet und dann wieder geschlossen oder gelöscht bekomme mit Hilfe eines Makros?
Danke vorab schonmal
Elmar

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateien öffenen mit VBA und dann löschen
12.05.2016 16:28:31
UweD
Hallo
hilft dir das?
in der Mitte baust du dein Makro ein.

Sub alle_Dateien_Verzeichnis() '
Dim Dlg As FileDialog
Dim Si, Ext$, Datei$
Set Dlg = Application.FileDialog(msoFileDialogFolderPicker) 'Verzeichnis wählen
If Dlg.Show = True Then
For Each Si In Dlg.SelectedItems
Ext = "*.xls*"
Si = IIf(Right(Si, 1) = "\", Si, Si & "\")
Datei = Dir(Si & Ext)
Do While Len(Datei) > 0
Workbooks.Open FileName:=Si & Datei
'mach was damit
Workbooks(Datei).Close False
Kill Datei
Datei = Dir() ' nächste Datei
Loop
Next
End If
End Sub

Gruß Uwe

Anzeige
AW: Dateien öffenen mit VBA und dann löschen
12.05.2016 16:36:44
UweD
im Kill-Befehl fehlt noch das Verzeichnis

Kill Si & Datei

AW: Dateien öffenen mit VBA und dann löschen
12.05.2016 16:32:12
Fennek
Hallo,
folgende Schleife öffnet alle Dateien eines Ordners und schließt sie nach der Bearbeitung. Mit einem "kill"-Befehl kann man sie auch löschen.

sPath = "c:\temp\" '  ""
'hier die Codes für die Bearbeitung
'z.B. : workbooks.open(sPath & sFile)
sFile = dir
loop
mfg

AW: Dateien öffenen mit VBA und dann löschen
12.05.2016 16:35:47
Daniel
Hi
du kannst dir DIR-Funktion verwenden.
mit DIR("D:\EM\Ablage_TS\*.xls*") bekommst du den Namen der ersten Exceldatei aus diesem Verzeichnis.
wenn du in der Folge dann nur noch DIR() abfragst, bekommst du die nächste Exceldatei aus diesem Verzeichnis.
Das kannst du in einer Schleife solange wiederholen, biss alle Dateien im Verzeichnis abgearbeitet sind auf die die erste Dir-Suche passt.
Wenn alle Dateien durch sind, gibt DIR dir dann den Leerstring zurück.
geht im Prinzip so:

dim Pfad as String
dim Datei as String
dim wb as workbook
Pfad = "D:\EM\Ablage_TS\"
Datei = Dir(Pfad & "*.xls*")
Do Until Datei = ""
Set wb = Workbooks.Open(Pfad & Datei)
'--- hier dann der Code zum Bearbeiten der Datei
wb.Close False
Datei = Dir()
Loop
Gruß Daniel

Anzeige
AW: Dateien öffenen mit VBA und dann löschen
12.05.2016 16:53:45
Elmar
Hallo zusammen,
bin ja überwältigt.... wenn ich das gewusst hätte, hätte ich nicht 2 Stunden mit versuchen vergeudet!
Ich probiere später beide Lösungen aus,muss grade weg in eine Besprechung,gebe nochmal kurz Feedback
DANKE schon an Euch alle!!
VG aus Wien
Elmar

AW: Dateien öffenen mit VBA und dann löschen
13.05.2016 00:01:50
Elmar
Hallo zusammen,
wie gedacht... funktioniert bestens in beiden Variationen.
DANKE nochmal
Elmar

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige