Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1528to1532
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

VBA - Inhalt von Ordner in anderen Ordner kopieren

VBA - Inhalt von Ordner in anderen Ordner kopieren
14.12.2016 21:55:18
Ordner
Hallo Experten,
Ich habe knapp 20 Dateien in 12 Ordnern die nicht nur identisch benannt sind, sondern die ich auch aus übergeordneten Verzeichnis/Datei weitgehend identisch bearbeite (Kopieren/Einfügen/Löschen von Werten etc.).
Um die Bearbeitung (der Dateien in 12 Ordnern) nicht ein Dutzend mal mit Schaltflächen/Code etc. wiederholen zu müssen, dachte ich, dass ich per Button alle Dateien aus einem der 12 Ordner in einen anderen Ordner (Name: „temp“) kopiere, dann meine Bearbeitung in der ausgehenden Mappe erledige, um danach per Button wieder 20 Dateien aus dem nächsten Ordner in „temp“ zu kopieren,- bzw die vorhandenen ohne Nachfrage, ersetze und meine Bearbeitung fortsetze.
Also, ich bräuchte ein VBA, welches mir per Button alle Dateien die im Verzeichnis (Pfad ist in „A1“ angegeben) sind, in den Ordner „C:\Users\Besitzer\Desktop\ELO\temp“ kopiert und evt. vorhandenen Dateien zuvor löscht,- ohne Nachfrage.
Kann mir jemand von den VBA-Experten da weiterhelfen?
Gruß
Fred

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Das lässt sich relativ...
15.12.2016 06:16:19
Case
Hallo Fred, :-)
... einfach mit "Shell" lösen: ;-)
Option Explicit
Sub Main()
Shell ("xcopy " & ThisWorkbook.Worksheets("Tabelle1").Range("A1").Value & _
Application.PathSeparator & "*.xls*" & " " & _
Environ("UserProfile") & "\Desktop\" & "ELO\temp\" & "/Y")
End Sub
Dabei steht bei mir in Tabelle1, A1 "C:\Temp" - NICHT "C:\Temp\" - dann müsstest Du den Code etwas anpassen. ;-)
Mit den guten alten DOS-Befehlen lässt sich in VBA einiges machen: ;-)
XCOPY - SHELL und ein paar Dinge mehr...
Falls das Verzeichnis auf dem Desktop nicht vorhanden ist, kannst Du es recht einfach mit der API-Funktion "MakeSureDirectoryPathExists" anlegen. Diese hat den Vorteil, dass sie - falls der Ordner schon vorhanden ist - das einfach ignoriert, sprich - keinen Fehler auslöst und auch Ordner mit mehreren Tiefen anlegen kann (im Gegensatz zu MkDir). ;-)
Option Explicit
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
ByVal DirPath As String) As Long
Sub Main_1()
MakeSureDirectoryPathExists Environ("UserProfile") & "\Desktop\" & "ELO\temp\"
End Sub
Servus
Case

Anzeige
VBA - Inhalt von Ordner in anderen Ordner kopieren
15.12.2016 15:16:04
Ordner
Hallo Case,
so schließt sich der Kreis :-)
Ich war erst letzte Nacht über Google auf deinem Blog und hatte mir alternativ für meine Anfrage deinen Code vom August 2012 http://vbanet.blogspot.de/2012/08/frage-ich-mochte-einen-bekannten-ordner.html
kopiert.
Deine Lösung hier im Forum ist natürlich genau das, was ich wollte und funzt einwandfrei.
Case, danke für deine Hilfe!
mfG
Fred
Gerne! Danke für die Rückmeldung, owT
16.12.2016 00:46:10
Case
:-)

317 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige