[GastForen Diverses Was sonst nirgends rein passt... Files aus einer Ordnerstruktur per Dateiliste zusammensammeln

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Files aus einer Ordnerstruktur per Dateiliste zusammensammeln

baumi77
Beiträge gesamt: 27

5. Aug 2008, 12:46
Beitrag # 1 von 6
Bewertung:
(3197 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

ich bräuchte ein Programm (oder ein Script - wobei ich mich damit nicht auskenne), welches unter Win XP (evtl. auch für OS X) welches mir folgendes Problem löst:

ich habe eine Liste von Dateien (z.B. aus Excel) und möchte mir die jetzt aus vielen Ordnern und Unterordnern zusammensammeln lassen...

Das kann ja eigentlich nicht so kompliziert sein, aber kein Suchprogramm, welches ich kenne, kann ich mit einer Liste von Dateien füttern...

Weiß jemand Rat?

Danke schonmal
Christian
X

Files aus einer Ordnerstruktur per Dateiliste zusammensammeln

MurphysLaw
Beiträge gesamt: 588

6. Aug 2008, 15:20
Beitrag # 2 von 6
Beitrag ID: #361625
Bewertung:
(3126 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Christian,

prinzipiell geht das schon, am einfachsten, indem man Excel selbst als Such- und Kopierprogramm benützt.
Dazu brauche ich aber mehr Details:

1. Sind die Dateien mit vollem Pfad in dieser Liste, oder nur ihre Dateinamen?

2. Falls nur die Namen: liegen sie alle im selben Rootverzeichnis oder auf dem selben Laufwerk?

3. Sollen alle flach (ohne UVZ) in das selbe Verzeichnis kopiert werden?

4. Kann es vorkommen, dass eine in der Liste stehende Datei nicht mehr vorhanden ist?

Soll erst mal reichen.
:)

Grüße,
Murphy


als Antwort auf: [#361514]

Files aus einer Ordnerstruktur per Dateiliste zusammensammeln

baumi77
Beiträge gesamt: 27

6. Aug 2008, 15:27
Beitrag # 3 von 6
Beitrag ID: #361626
Bewertung:
(3122 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Murphy,

1. Nur Dateiname
2. die Dateien liegen alle dem selben Laufwerk (aber eben in unterschiedlichsten UVZ variabler Tiefe)
3. alle Dateien in ein Verzeichnis meiner Wahl
4. eigentlich sind alle Dateien vorhanden - wenn sich ein Nichtvorhandensein abfangen ließe, wärs auch nicht verkehrt

Danke schonmal - mit Excel rumgescripte kenn ich mich leider nicht aus (bin Grafiker und brauche Bilddaten für einen Katalog, die auf unserem Fileserver rumliegen...)

Baumi
-----


als Antwort auf: [#361625]

Files aus einer Ordnerstruktur per Dateiliste zusammensammeln

MurphysLaw
Beiträge gesamt: 588

6. Aug 2008, 16:28
Beitrag # 4 von 6
Beitrag ID: #361643
Bewertung:
(3099 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
OK.

0. Nicht über die Länge des nachfolgenden Posts und die Anzahl der Schritte erschrecken. Alles weitestgehend harmlos.
Sollten deine Dateinamen NICHT in einer Spalte untereinander stehen, dann ignorier den Post (heul) und sag, wie die Dateinamen aufgelistet sind. Ansonsten....
:)

Dann mach mal folgendes:

1. Mach ein Backup der Excelliste
2. Leg das Zielverzeichnis an
3. Starte Excel
4. Prüfe, ob du Makros ausführen kannst. Dazu klicken auf "Extras->Makros->Sicherheit". Wenn die auf "Hoch" oder gar "Sehr hoch" steht, schraub sie mal (vorübergehend) auf "mittel" runter
5. Schließe Excel, starte es erneut
6. Öffne die Dateiliste
7. Drücke Alt+F11 oder "Extras->Makros->Visual Basic Editor"
8. Mach im linken Frame einen rechten Mausklick auf "Diese Arbeitsmappe"
9. "Einfügen-->Modul"
10. Füge jetzt im rechten weißen Text bereich nachfolgendes Makro ein (einfach Copy/Paste):
Code
Sub SammelDateien() 
Dim Quelle As String, Ziel As String, letzter As Long, i As Long
Dim Root As String
Dim fso As FileSystemObject

On Error Resume Next 'Bei Auftreten eines Fehlers einfach weitermachen

Set fso = New FileSystemObject
'Hier wird das Laufwerk angegeben, in dem sich alle Bilddateien befinden
Root = "C:\"

Ziel = InputBox("In welchen Ordner sollen die Dateien kopiert werden?")

'Zeilennummer des letzten Eintrags ermitteln
letzter = Cells.SpecialCells(xlCellTypeLastCell).Row

'Angenommen, die Dateien stehen in der Excelliste alle in Spalte A
'nacheinander alle Dateinamen aus Spalte A auslesen
For i = 1 To letzter
With Application.FileSearch
.LookIn = Root
.SearchSubFolders = True
.FileType = msoFileTypeAllFiles
.Filename = Range("A" & i).Text
.Execute

'Falls Datei gefunden, ins Zielverzeichnis kopieren; sonst Meldung und weitermachen
If .FoundFiles.Count = 0 Then
MsgBox "Datei " & Range("A" & i).Text & " nicht gefunden."
Else
Quelle = .FoundFiles(1)
fso.CopyFile Quelle, Ziel & Range("A" & i).Text
End If

End With
Next i

End Sub


11. Klicke jetzt im VB-Editor noch auf "Extras-->Verweise", scrolle die Liste hinab bis zu "Microsoft Scripting Runtime", setz dort ein Häkchen und bestätige mit OK.

12. Passe den Laufwerksbuchstaben des Bild-Quelllaufwerks in der Zeile "Root="C:\"" an

13. Passe auch den Spaltenbuchstaben an, in dem die Dateinamen stehen, und zwar überall dort, wo "Range("A" & i).Text" steht.

14. Jetzt bist Du (theoretisch) fertig. Drücke F5, um das Makro zu starten und beide Daumen, das es sauber läuft.


TOI, toi, toi!


als Antwort auf: [#361626]

Files aus einer Ordnerstruktur per Dateiliste zusammensammeln - SOLVED

baumi77
Beiträge gesamt: 27

7. Aug 2008, 16:07
Beitrag # 5 von 6
Beitrag ID: #361796
Bewertung:
(3047 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Murphy -

WOW - es funzt, und zwar sowas von...
Genau was ich gebraucht habe - Danke allerherzlichst

Das war ne Punktlandung

baumi :-)))
-----------------


als Antwort auf: [#361643]

Files aus einer Ordnerstruktur per Dateiliste zusammensammeln - SOLVED

MurphysLaw
Beiträge gesamt: 588

7. Aug 2008, 16:29
Beitrag # 6 von 6
Beitrag ID: #361805
Bewertung:
(3043 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Yuppieh!
(Natürlich wusste ich, dass es läuft, aber man weiß ja nie, sagt Murphy).

Freut mich!

Grüßle,
'sÄffle


als Antwort auf: [#361796]
X