Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Dateien umbenennen

Betrifft: Dateien umbenennen von: maxim
Geschrieben am: 08.09.2020 08:29:32

Guten Morgen zusammen,

ich habe im Forum jetzt mehrere Codes ausprobiert, aber irgendwie haben die alle nicht funktioniert.

Ich habe eine Datei in der ich in Spalte A die aktuellen Namen der Dateien habe und in Spalte B die Namen, die die jetzt bekommen sollen.

Die Dateien liegen alle in einem Verzeichnis. Ich hoffe das sind alle Informationen die benötigt werden.
Kann mir jemand vielleicht dabei weiterhelfen?

Lieben Gruß

Betrifft: AW: Dateien umbenennen
von: Nepumuk
Geschrieben am: 08.09.2020 08:49:43

Hallo maxim,

ich gehe davon aus, dass sich die Dateiendung mit in der Tabelle befinden.

Option Explicit

Public Sub Umbenennen()
    Const FOLDER_PATH As String = "H:\Test\" 'Anpassen - Backslash am Ende nicht löschen !!!
    Dim lngRow As Long
    For lngRow = 1 To Cells(Rows.Count, 1).End(xlUp).Row
        If Dir$(FOLDER_PATH & Cells(lngRow, 1).Text) <> vbNullString Then _
            Name FOLDER_PATH & Cells(lngRow, 1).Text As FOLDER_PATH & Cells(lngRow, 2).Text
    Next
End Sub

Gruß
Nepumuk

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 08.09.2020 09:38:45

Vielen Dank, hat wunderbar geklappt. Bin echt neidisch

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 08.09.2020 09:38:48

Vielen Dank, hat wunderbar geklappt. Bin echt neidisch

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 09.09.2020 16:05:52

Hi, ich habe jetzt deinen Code in mein Dokument hinzugefügt. Habe den Pfad geändert so wie zu vor auch und jetzt funktioniert es nicht. Es kommt ein Laufzeitfehler 53 nicht gefunden
Woran kann das liegen? Als ich das das erste Mal versucht habe, war das in einem Ordner mit wo lediglich genau die dateien aus der Liste abgelegt waren. Jetzt versuche ich das an einem Ordner wo noch Unterordner und andere Dateien abgelegt sind. Kann es daran liegen?

Betrifft: AW: Dateien umbenennen
von: Nepumuk
Geschrieben am: 09.09.2020 16:18:06

Hallo maxim,

befinden sich die Endungen zu den Dateien in der Liste?

An anderen Dateien oder Unterordnern kann es nicht liegen.

Gruß
Nepumuk

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 09.09.2020 16:32:20

ja die Endungen befinden sich in der Liste

Betrifft: AW: Dateien umbenennen
von: Nepumuk
Geschrieben am: 09.09.2020 16:38:11

Hallo maxim,

dann kann ich den Fehler nicht nachvollziehen. Lade mal die Mappe mit ein paar Dateinamen und einen Screenshot von dem Ordner hoch.

Gruß
Nepumuk

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 09.09.2020 16:47:21

Ich hoffe das genügt so

https://www.herber.de/bbs/user/140152.png

https://www.herber.de/bbs/user/140153.xlsm

Betrifft: AW: Dateien umbenennen
von: Nepumuk
Geschrieben am: 09.09.2020 17:17:05

Hallo maxim,

lass das mal laufen:

Public Sub Umbenennen()
    Const FOLDER_PATH As String = "R:\KM\KMM\M40.0 Anlagendoku\11 G1 GuD-Anlage\02 RuI Fließbilder\"
    Dim lngRow As Long
    On Error GoTo err_exit
    For lngRow = 4 To Cells(Rows.Count, 1).End(xlUp).Row
        If Dir$(FOLDER_PATH & Cells(lngRow, 1).Text) <> vbNullString Then _
            Name FOLDER_PATH & Cells(lngRow, 1).Text As FOLDER_PATH & Cells(lngRow, 2).Text
    Next
    Exit Sub
    err_exit:
    Call MsgBox("Fehler: " & CStr(Err.Number) & vbLf & vbLf & Err.Description & vbLf & vbLf & _
        "Dateinname: " & Cells(lngRow, 1).Text, vbCritical, "Fehlermeldung")
    Cells(lngRow, 1).Interior.Color = vbRed
    Resume Next
End Sub

Die Dateinamen bei denen ein Fehler passiert werden rot markiert. Schau mal ob du diese im Ordner findest und was an denen anders ist als die Dateien bei denen es funktioniert.

Gruß
Nepumuk

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 09.09.2020 19:18:57

Danke für deine Antwort. Ich bin jetzt erst am Freitag wieder im Büro und da werde ich das dann ausprobieren. Aber eigentlich hatte ich die Namen auch per vba ausgelesen :/

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 09.09.2020 19:18:59

Danke für deine Antwort. Ich bin jetzt erst am Freitag wieder im Büro und da werde ich das dann ausprobieren. Aber eigentlich hatte ich die Namen auch per vba ausgelesen :/

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 09.09.2020 19:19:00

Danke für deine Antwort. Ich bin jetzt erst am Freitag wieder im Büro und da werde ich das dann ausprobieren. Aber eigentlich hatte ich die Namen auch per vba ausgelesen :/

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 09.09.2020 19:19:01

Danke für deine Antwort. Ich bin jetzt erst am Freitag wieder im Büro und da werde ich das dann ausprobieren. Aber eigentlich hatte ich die Namen auch per vba ausgelesen :/

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 09.09.2020 19:19:04

Danke für deine Antwort. Ich bin jetzt erst am Freitag wieder im Büro und da werde ich das dann ausprobieren. Aber eigentlich hatte ich die Namen auch per vba ausgelesen :/

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 10.09.2020 14:51:10

Also die Datei Namen sind definitv die richtigen, da die ausgelesen wurden von mir. Ich bin heute nicht im Büro und gucke mir das morgen weiter an. Ich probiere es trotzdem aus, danke

Betrifft: AW: Dateien umbenennen
von: UweD
Geschrieben am: 08.09.2020 09:10:02

Hallo


versuch es mal so..
Sub umbenennen()
    Dim LR As Integer, Sp As Integer, Z1 As Integer, i As Integer
    Dim Pfad As String, NAlt As String, NNeu As String
    
    Z1 = 1 'ggf Überschrift beachten
    Sp = 1 'Daten in Spalte A
    Pfad = "E:\Temp\" 'mit \ am Ende
    
    With Sheets("Tabelle1")
        LR = .Cells(.Rows.Count, Sp).End(xlUp).Row 'letzte Zeile der Spalte
        
        For i = Z1 To LR
            NAlt = .Cells(i, Sp)
            NNeu = .Cells(i, Sp).Offset(0, 1)
            
            If NAlt <> "" And NNeu <> "" Then
                If Dir(Pfad & NAlt) <> "" Then
                            
                    Name Pfad & NAlt As Pfad & NNeu
                Else
                    MsgBox NAlt & ": nicht gefunden"
                End If
            End If
        Next
    End With
    
End Sub
LG UweD

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 08.09.2020 09:39:38

Hi Uwe, habe deinen Code auch ausprobiert und der funktioniert auch einwandfrei. Vielen Dank

Betrifft: AW: Dateien umbenennen
von: maxim
Geschrieben am: 09.09.2020 15:35:55

Hi Uwe,

ich habe deinen Code jetzt in mein Dokument eingefügt. Habe auch die Startzeile und den Pfad angepasst. Leider kriege ich jetzt aber eine Laufzeit Fehlermeldung. Woran kann das liegen?

In dem Ordner wo ich das jetzt anwende sind auch noch andere Ordner und andere Dateien, hat das Einfluss darauf?

Mit freundlichen Grüßen

Beiträge aus dem Excel-Forum zum Thema "Dateien umbenennen"