Excel VBA: Dateien kopieren und an anderem Ort ablegen

Diskutiere und helfe bei Excel VBA: Dateien kopieren und an anderem Ort ablegen im Bereich Microsoft Office im Windows Info bei einer Lösung; Hallo, ich habe mir eine Exceldatei angelegt in der ich div. Dateien mit komplettem Pfad angebe und dazu auch einen Backup Ordner (exisitiert bereits... Dieses Thema im Forum "Microsoft Office" wurde erstellt von ddfgdf, 2. März 2018.

  1. ddfgdf
    ddfgdf Gast

    Excel VBA: Dateien kopieren und an anderem Ort ablegen


    Hallo,


    ich habe mir eine Exceldatei angelegt in der ich div. Dateien mit komplettem Pfad angebe und dazu auch einen Backup Ordner (exisitiert bereits mit div. Unterordnern) in den eine Kopie gespeichert werden soll.


    So habe ich mir das vorgestellt:


    A3: Pfad Quelle Datei 1 ; B3: Dateiname Quelle Datei 1; C3: Pfad Ziel Datei 1; D3: Dateiname Ziel Datei 1

    A4: Pfad Quelle Datei 2 ; B4: Dateiname Quelle Datei 2; C4: Pfad Ziel Datei 2; D4: Dateiname Ziel Datei 2


    Gebaut habe ich mir das:


    Sub kopieren()
    Dim lngRow As Long
    Dim strFilename As String, strFolder As String
    Dim strOldPath As String, strNewPath As String

    'Schleife ab Zeile 3 bis zur letzten Zeile
    For lngRow = 3 To Cells(Rows.Count, 1).End(xlUp).Row
    'Odnername ermitteln => Spalte A
    strFolder = Cells(lngRow, 1).Text
    'ggf. ein Backslash anhängen
    If Right$(strFolder, 1) <> "\" Then strFolder = strFolder & "\"
    'Datei ermitteln => Spalte B
    strFilename = Cells(lngRow, 2).Text
    'kompletten Dateinamen zusammensetzen
    strOldPath = strFolder & strFilename
    'Zielpfad ermitteln => Spalte C
    strFolder = Cells(lngRow, 3).Text
    'ggf. ein Backslash anhängen
    If Right$(strFolder, 1) <> "\" Then strFolder = strFolder & "\"
    'Zieldatei ermitteln => Spalte D
    strFilename = Cells(lngRow, 4).Text
    'komplettes Ziel zusammensetzen
    strNewPath = strFolder & strFilename

    'kopieren
    FileCopy strOldPath, strNewPath
    Next lngRow
    End Sub


    Es funktioniert allerdings nur für die zwei ersten Einträge der Liste. Dann bleibt das Makro bei


    FileCopy strOldPath, strNewPath


    hängen.


    Kann jemand weiterhelfen?


    Danke


    Stefan
     
  2. Claus Busch Win User

    Excel VBA: Dateien kopieren und an anderem Ort ablegen

    Hallo Stefan,

    bei mir läuft das Makro ohne Probleme. Es liegt also nicht am Code.

    FSO.CopyFile schlägt fehl, wenn die Dateien benutzt werden. Schließe mal alle Programme, die zur Laufzeit auf die Dateien zugreifen (Outlook, Browser usw.) und teste dann erneut.

    Claus
  3. ddfgdf Win User

    Excel VBA: Dateien kopieren und an anderem Ort ablegen

    Die Dateinamen hab ich doch nicht geändert:


    [​IMG]
  4. Claus Busch Win User

    Excel VBA: Dateien kopieren und an anderem Ort ablegen

    Hallo Stefan,

    bekommst du eine Fehlermeldung?

    strOld und strNew müssen den kompletten Pfad und den Dateinamen mit der Dateiendung haben. Ist in den Spalten B und D die Dateiendung enthalten?

    Claus
  5. ddfgdf Win User

    Excel VBA: Dateien kopieren und an anderem Ort ablegen

    Hallo Claus,

    vielen DAnk.

    Bleibt hängen bei

    FSO.Copyfile strOld, strNew

    Viele Grüße

    Stefan
  6. Claus Busch Win User

    Excel VBA: Dateien kopieren und an anderem Ort ablegen

    Hallo Stefan,

    probiere es mal so:

    Sub KopierenUndUmbenennen()
    
    Dim strOld As String, strNew As String
    
    Dim varData As Variant, varFehler() As Variant
    
    Dim LRow As Long, i As Long, n As Long
    
    Dim FSO As Object
    Set FSO = CreateObject("Scripting.Filesystemobject")
    
    With ActiveSheet
    
       LRow = .Cells(.Rows.Count, "A").End(xlUp).Row
    
       varData = .Range("A3:D" & LRow)
    
       For i = LBound(varData) To UBound(varData)
    
          If Right(varData(i, 1), 1) <> "\" Then varData(i, 1) = varData(i, 1) & "\"
    
          If Right(varData(i, 3), 1) <> "\" Then varData(i, 3) = varData(i, 3) & "\"
    
          strOld = varData(i, 1) & varData(i, 2)
    
          strNew = varData(i, 3) & varData(i, 4)
    
          If FSO.FileExists(strOld) Then
    
             FSO.Copyfile strOld, strNew
    
          Else
    
             ReDim Preserve varFehler(n)
    
             varFehler(n) = strOld
    
             n = n + 1
    
          End If
    
       Next
    
       MsgBox "Kopieren beendet" & Chr(10) & Chr(10) & "Die Dateien:" _
    
          & Chr(10) & Join(varFehler, Chr(10)) _
    
          & Chr(10) & "existieren nicht"
    
    End With
    
    End Sub
    Claus
  7. User Advert


    Hi,

    willkommen im Windows Forum!
Thema:

Excel VBA: Dateien kopieren und an anderem Ort ablegen - Microsoft Office

Die Seite wird geladen...

Excel VBA: Dateien kopieren und an anderem Ort ablegen - Similar Threads - Excel VBA Dateien

Forum Datum

VBA Excel Datei über Userform auswählen

VBA Excel Datei über Userform auswählen: Hallo zusammen,ich komme bei folgendem Code nicht weiter.ich möchte anhand eines zugeordneten Pfades in einer Userform eine Datei zuerst aussuchen und dann abspeichernFolgende Fehlermeldung...
Microsoft Office 17. Dezember 2022

Excel VBA PDF und Datei speichern

Excel VBA PDF und Datei speichern: Hallo zusammen,kann mir bitte jemand nochmal bei einem Problem helfen.Ich möchte aus der der Windowsumgebung ich nutze Windows11 Office 365 über Parallels1. eine PDF einer Tabelle auf dem Mac...
Microsoft Office 8. November 2022

VBA Excel Datei mit Uhrzeit Speichern

VBA Excel Datei mit Uhrzeit Speichern: Hallo zusammen,ich würde gerne eine Datei mit Datum und Zeitstempel abspeichern.Sub SpeichernThisWorkbook.SaveAs "C:\Anwesenheit\" & "Anwesenheitsliste_" _ & FormatDate, "DD.MM.YYYY hh:mm:ss" &...
Microsoft Office 2. November 2022

Excel VBA Makro "suchen und kopieren" anpassen

Excel VBA Makro "suchen und kopieren" anpassen: Ich habe eine VBA Code gefunden, der gut ist, aber angepasst werden muss.Der Code erfüllt folgendes:Es erscheint eine EingabeaufforderungEr sucht in "Tabellenblatt A" in "Spalte A" einen Wert,...
Microsoft Office 11. Mai 2021

Datenverlust nach dem Kopieren von Excel Dateien

Datenverlust nach dem Kopieren von Excel Dateien: Hi, ich habe ein großes Problem, dass Excel oftmals nach dem Kopieren Daten verliert. Beispiel: Ich verwende Office 365 im Büro Win10. Das automatische Speichern ist ausgeschaltet in OneDrive...
Microsoft Office 18. November 2020

Excel VBA: Dateien kopieren und an anderem Ort ablegen

Excel VBA: Dateien kopieren und an anderem Ort ablegen: Hallo, mit folgendem Makro kopiere ich selektiv div. einzelne Dateien von einem Ort zu einem anderen: Sub KopierenUndUmbenennen2() Dim FSO As Object Dim varData As Variant Dim LRow As Long, i...
Microsoft Office 11. Februar 2019

VBA Hyperlink kopieren

VBA Hyperlink kopieren: Hallo, ich habe 2018 begonnen alle Rechnungen digital abzulegen. Die Rechnungen werden in einer Urliste verschlagwortet. Die Urliste beinhaltet u. a. einen Link über den sich die Rechnung...
Microsoft Office 25. Februar 2018
Excel VBA: Dateien kopieren und an anderem Ort ablegen solved

Users found this page by searching for:

  1. excel vba datei an anderem Ort als kopie ablegen

    ,
  2. vba excel text dateien

  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.