Datei per VBA vor Schließen kopieren.
13.05.2023 17:49:23
Simon
Hallo, ich habe auf einem Server eine Datei. Diese soll vor dem beenden in einen anderen Ordner kopiert werden. Ich habe zwei Formeln die aber beide nicht klappen.
1. Formel von Chatgpt
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Pfad und Dateinamen der Quelldatei
Dim Quellpfad As String
Dim Quellname As String
Quellpfad = ActiveWorkbook.Path & "\"
Quellname = ActiveWorkbook.Name
'Pfad und Dateinamen des Zielorts
Dim Zielordner As String
Dim Zielname As String
Zielordner = "C:\Users\" & Environ("username") & "\OneDrive - Firma\Unerordner 1\Unterordner 2\Unterordner 3\Backup vom Server\"
Zielname = ActiveWorkbook.Name
'Kopiere die Datei
FileCopy Quellpfad & Quellname, Zielordner & Zielname
End Sub
Wenn ich die Formel in ein Modul kopiere passiert gar nix und wenn ich die Formel in "Diese Arbeitsmappe" kopiere bekomme ich "Fehler 70 - Zugriff Verweigert"2. Formel hier aus dem Forum
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim myFSO As Object
Dim qFolder As String
Dim tFolder As String
Dim qFile As String
qFile = "Liste 2023.xlsm"
qFolder = "\\Server2023\Firma\Person\Team"
tFolder = "C:\Users\" & Environ("username") & "\OneDrive - Firma\Unerordner 1\Unterordner 2\Unterordner 3\Backup vom Server\"
'Kill tFolder & qFile
Set myFSO = CreateObject("Scripting.FileSystemObject")
myFSO.movefile qFolder & qFile, tFolder & qFile
'Alternativ kopieren
'myFSO.copyfile qFolder & qFile, tFolder & qFile, True
End Sub
Wenn ich die Formel in ein Modul kopiere passiert gar nix und wenn ich die Formel in "Diese Arbeitsmappe" kopiere bekomme ich "Laufzeitfehler 53 - Datei nicht gefunden"Vl. habe ich hier was falsches eingetragen. Erklärung für die Formel gab es keine.
Private Sub Workbook_BeforeClose(Cancel As Boolean) habe ich in dieser Formel selber eingetragen. Da stand vorher Sub Move_File().
Anzeige