ich habe folgendes Problem. Ich habe ca 5000 Audio Dateien und eine Excel Tabelle. In der Excel Tabelle kommen die Dateinamen in einer bestimmten Reihenfolge vor (alle in einer Spalte untereinander). Die Audio Dateien muss ich in einem Audio Schnittprogramm in derselben Reihenfolge, wie in der Tabelle, anordnen. Mir bleibt also nur übrig, die Dateien in der Reihenfolge, wie sie in der Excel Tabelle vorkommen, durch zu nummerieren. Excel muß also die Datei anhand des Namens in der Spalte finden und vorne eine vierstellige Nummer aufsteigend hinzufügen.
Beispiel:
Alter DateinamenA.wav Alter DateinamenB.wav Alter DateinamenC.wav
umbenennen in:
0001 Alter DateinamenA.wav 0002 Alter DateinamenA.wav 0003 Alter DateinamenA.wav
Jetzt habe ich schon einen Code, der auf dem PC mit Excel 2016 auch funktioniert. Auf dem Mac mit Excel 2016 geht es zwar auch, aber wegen dem Sandboxing muß ich den Zugriff für jede Datei einzeln bestätigen. Es gibt wohl einen Workaround, aber das übersteigt meine Programmierkenntnisse:
Hallo Michi, ich kann es leider nicht testen weil ich noch ein uraltes Excel habe, aber probier mal:
Sub Test() Dim fileAccessGranted As Boolean Dim iPath As String Dim lastRow As Long, i As Long Dim oldFile As String, newFile As String iPath = "c:temp:" ' Letzte Zeile Spalte A lastRow = Cells(Rows.Count, "A").End(xlUp).Row Application.ScreenUpdating = False For i = 1 To lastRow ' Name Spalte A oldFile = iPath & Cells(i, "A") fileAccessGranted(oldFile) = True newFile = iPath & Format(i, "0###") & " " & Cells(i, "A") Name oldFile As newFile Next i End Sub
Gruß Klaus
Dateien anhand einer Excel Reihenfolge nummerieren mit VBA
Unter dem Mac brauchst Du einen Doppelpunkt, unter Windows den Backslash / Und natürlich muss unter Laufwerk C der Ordner "temp" angelegt sein.
Statt Doppelpunkt oder / kannst Du auch plattformunabhängig den Application.PathSeparator verwenden: iPath = "c" & Application.PathSeparator & "temp" & Application.PathSeparator Für Mac und Windows gültig
Zu Frage 1: da kann ich dir ohne Testen zu können leider nicht mehr weiter helfen ...
Gruß Klaus
Dateien anhand einer Excel Reihenfolge nummerieren mit VBA
ich hab da eine Idee, die Außerhalb von Excel bewerkstelligt wird. Mit dem Inhalte der Spalte in Excel, die die Dateinamen beinhaltet, kann mit einer z. B. PHP-Script genau das gemacht werden, was gewünscht ist (Umbennennen der Dateien mit vorangestellten Ziffern, passen zur Excel-Reihenfolge).
HG Thomas
Dateien anhand einer Excel Reihenfolge nummerieren mit VBA
Die sehen alle ungefähr so aus. Könnten in der Zukunft aber auch mal anders aussehen. Und die sind jetzt zufällig nach Alphabet sortiert. Aber spielt das eine Rolle?
Ne, sorry, ich hab leider keine Ahnung von Php. Aber ein Kollege in der Arbeit kennt sich damit aus. Wenn du mir die Infos schreibst, dann wird der sie verstehen.
Vielen Dank, dass du dir Samstag Abend solche Mühen machst.
Dateien anhand einer Excel Reihenfolge nummerieren mit VBA
wenn auf dem Rechner, auf dem die Dateien liegen (oder im gleichen Netzwerk) ein PHP-Server läuft sollte es funktionieren. Sollten die Datenmengen nicht allzugroß und geheim sein, biete ich an, diese nach diesem Schema umzubenennen.
Dateien anhand einer Excel Reihenfolge nummerieren mit VBA
Also die Dateien sind winzig, aber die kann ich aus Sicherheitsgründen leider nicht rausgeben. Ausserdem werde ich in Zukunft öfters Dateien umbenennen müssen. Is also keine einmalige Sache. Aber das mit dem PHP Server müsste ich hinbekommen.