Dieser Haken soll dazu führen, dass die Datei gespeichert wird und in einen anderen Ordner verschoben wird.
-> Haken geht, Makro löst aus, speichern funktioniert.
Weil ich eine geöffnete Arbeitsmappe nicht verschieben kann und nach dem Schließen das Makro nicht mehr funktioniert, habe ich mir eine Hilfsdatei angelegt, in die der zu verschiebende Dateiname reinkopiert wird.
Merke: Verschieben = Kopie einer Datei speichern + alte Datei anschließend löschen
Du musst dir also nur
1) den aktuellen Dateipfad merken,
Dim FileToDelete As String
FileToDelete = ThisWorkbook.FullName
2) dann Workbook.SaveAs ausführen und dieser den neuen vollständigen Dateipfad übergeben
Nachdem dieser Befehl ausgeführt wurde, hast du die Kopie am neuen Speicherplatz vor deiner Nase und kannst die Datei an der alten Stelle löschen.
3) und zum Schluss die alte Datei löschen
'Call SetAttr(FileToDelete, vbNormal) ' den normalen Schreibschutz entfernen (nur wenn benötigt)
Call Kill(FileToDelete)
Fertsch.
Eine Hilfsdatei ist dafür also nicht notwendig.
Grüße
|