Registriert seit: 05.12.2014
Version(en): 2010-2013
Hallo liebe Leute,
ich habe folgendes Problem. In dem Ordner C:\Sammlung von mir befinden sich Dateien von mir, dessen Namen folgendes Format besitzen: Name_001.txt, Name_002.txt, Name_003.txt, Name_004.txt usw.
Wie schaffe ich es mittels VBA, dass alle Dateien die eine gerade Zahl in ihrem Namen haben, umbenannt werden. Name_002.txt soll zu Neu_002.txt werden, Name_004.txt zu Neu_004.txt usw.
Da ich wenig Ahnung von VBA habe wäre ich sehr dankbar von euch den entsprechenden Code zu erhalten.
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi Nora, auf deine Frage kann ich dir fachlich leider keine Antwort geben. Mir ist aber beim Lesen deines Beitrags aufgefallen, dass du deine Daten auf Laufwerk C speicherst. Hier möchte ich dir den Tipp geben, dass du dir eine separate Partition anlegst - z.B. Lw D und dort alle deine Dateien ablegst. Im Falle eines Crashs deines Betriebssystems sind in der Regel alle Daten futsch und du hast dann die mühevolle Kleinarbeit, deine (hoffentlich) gesicherten Daten vom Stick, DVD usw. wieder zu rekonstruieren. Und bei nicht gesicherten Dateien.... :93: :92: :69:
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 06.12.2015
Version(en): 2016
(06.12.2015, 16:10)Nora Fernandez schrieb: Hallo liebe Leute,
ich habe folgendes Problem. In dem Ordner C:\Sammlung von mir befinden sich Dateien von mir, dessen Namen folgendes Format besitzen: Name_001.txt, Name_002.txt, Name_003.txt, Name_004.txt usw.
Wie schaffe ich es mittels VBA, dass alle Dateien die eine gerade Zahl in ihrem Namen haben, umbenannt werden. Name_002.txt soll zu Neu_002.txt werden, Name_004.txt zu Neu_004.txt usw.
Da ich wenig Ahnung von VBA habe wäre ich sehr dankbar von euch den entsprechenden Code zu erhalten. Hallo Nora, Suche einmal in der vba-Hilfe nach 'filesystemobject', dort gibt auch viele Beispiele, wie diese Funktionen auch für rename eingesetzt werden kann.
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
06.12.2015, 19:22
(Dieser Beitrag wurde zuletzt bearbeitet: 06.12.2015, 19:22 von RPP63.
Bearbeitungsgrund: Fehlerteufelchen beseitigt
)
@Fennek: Jemandem, der wenig bis gar keine Ahnung von VBA hat, Selbststudium des FileSystemObjekts in der VBA-Hilfe zu empfehlen, dürfte zum Scheitern verurteilt sein. @Nora: Wenn die Umbenennung wirklich so simpel per Algorithmus ermittelbar ist, würde ich mir zunächst eine Umbenennungstabelle mit einfachen Formeln erstellen und dann mittels VBA die Name As Anweisung benutzen. (Formeln aus Zeile 3 nach unten ziehen) | A | B | 1 | Ordner | J:\Sammlung\ | 2 | Datei alt | Datei neu | 3 | Name_001.txt | Name_001.txt | 4 | Name_002.txt | Neu_002.txt | 5 | Name_003.txt | Name_003.txt | 6 | Name_004.txt | Neu_004.txt | 7 | Name_005.txt | Name_005.txt | 8 | Name_006.txt | Neu_006.txt | Formeln der Tabelle | Zelle | Formel | A3 | ="Name_"&TEXT(ZEILE(A1);"000")&".txt" | B3 | =WENN(REST(--(TEIL(A3;6;3));2)=1;A3;"Neu_"&TEIL(A3;6;7)) |
| Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8 Makro: Sub NeuerName() Dim Zeile As Long, cnt As Long Zeile = Cells(Rows.Count, 1).End(xlUp).Row For cnt = 4 To Zeile Step 2 Name Cells(1, 2) & Cells(cnt, 1) As Cells(1, 2) & Cells(cnt, 2) Next End Sub (Etwas einfacher als das FileSystemObjekt) Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 28.05.2014
Version(en): 2013 / 2016
... und ich würde Excel nicht zweckentfremdem, nur weil s sich um *.xls*-Files handelt. Es gibt so schöne Rename-Tools kostenlos im Netz! Ich selbst verwende Total Commander und bin höchst zufrieden damit, auch wenn das Umbenennen-Tool nur eine von vielen Annehmlichkeiten ist.
Beste Grüße Günther
Excel-ist-sexy.de …schau doch mal rein! Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
06.12.2015, 20:34
(Dieser Beitrag wurde zuletzt bearbeitet: 06.12.2015, 20:34 von RPP63.)
Aber Du musst doch zugeben, Günther, dass meine Variante in ihrer Schlichtheit fast schon hübsch ist. :19: (und es sind noch nicht mal *.xls*) In meinem Code wäre es tatsächlich als seltenes Beispiel sinnvoll, ein On Error Resume Next einzustreuen, falls eine Datei nicht gefunden wird.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 28.05.2014
Version(en): 2013 / 2016
Ralf, ich gebe dir wirklich in jedem Punkt Recht. Ich freue mich über solche Fragen genau so wie "Ich möchte mit Excel einen lange Text schreiben, am besten so etwas, wie einen Serienbrief". So etwas kommt ja auch immer wieder mit schöner Regelmäßigkeit. :05:
Beste Grüße Günther
Excel-ist-sexy.de …schau doch mal rein! Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Registriert seit: 10.04.2014
Version(en): 2016 + 365
06.12.2015, 21:39
(Dieser Beitrag wurde zuletzt bearbeitet: 07.12.2015, 09:25 von Rabe.)
Hi, (06.12.2015, 20:34)RPP63 schrieb: Aber Du musst doch zugeben, Günther, dass meine Variante in ihrer Schlichtheit fast schon hübsch ist. :19: die Frage ist nur, wie bekommt Nora nun mit der Liste in Excel die Dateien auf der Festplatte umbenannt?
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
06.12.2015, 21:46
(Dieser Beitrag wurde zuletzt bearbeitet: 06.12.2015, 21:47 von RPP63.)
Hi Ralf! Das umfangreiche Makro steht doch darunter. Probiere es doch einfach mal aus, wie eben geschrieben, zur "Sicherheit" incl. On Error Resume Next. Sub NeuerName() Dim Zeile As Long, cnt As Long On Error Resume Next Zeile = Cells(Rows.Count, 1).End(xlUp).Row For cnt = 4 To Zeile Step 2 Name Cells(1, 2) & Cells(cnt, 1) As Cells(1, 2) & Cells(cnt, 2) Next End Sub Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hi Ralf, (06.12.2015, 21:46)RPP63 schrieb: Das umfangreiche Makro steht doch darunter. ok, jetzt habe ich mir das Makro angeschaut und auch verstanden, was es macht.
|