xls ins Archiv verschieben
Hallo ich versuche ein Skript zu bauen in dem aus den Dateien daten.xls und info.xls jeweils immer die ersten 3 Zeilen und die letzte Zeile gelöscht wird.
Jeden Tag speichern wir eine neue daten.xls und info.xls in den Ordner.
Dabei werden die Dateien vom Vortag überschrieben. Ist es möglich anstatt die Daten zu überschreiben, die „alten“ Daten in den Ordner „Archiv“ zu verschieben am Besten mit dem Datum vor dem Dateinamen, z.B. 18.09.07_daten.xls und 18.09.07_info.xls.
Die neuen Daten heissen dann weiterhin daten.xls und info.xls nur der „Altbestand“ wird in den Ordner Archiv verschoben mit dem Datumszusatz.
Optimal wäre es wenn dies in 1 Schritt passieren würde, Zeilen löschen und archivieren ;)
Gruß Julia
Jeden Tag speichern wir eine neue daten.xls und info.xls in den Ordner.
Dabei werden die Dateien vom Vortag überschrieben. Ist es möglich anstatt die Daten zu überschreiben, die „alten“ Daten in den Ordner „Archiv“ zu verschieben am Besten mit dem Datum vor dem Dateinamen, z.B. 18.09.07_daten.xls und 18.09.07_info.xls.
Die neuen Daten heissen dann weiterhin daten.xls und info.xls nur der „Altbestand“ wird in den Ordner Archiv verschoben mit dem Datumszusatz.
Optimal wäre es wenn dies in 1 Schritt passieren würde, Zeilen löschen und archivieren ;)
Gruß Julia
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 68938
Url: https://administrator.de/forum/xls-ins-archiv-verschieben-68938.html
Ausgedruckt am: 24.12.2024 um 00:12 Uhr
6 Kommentare
Neuester Kommentar
Hallo Bacaaardi!
Das Archivieren selbst ist rein handwerklich etwa so zu lösen:
Gleichnamige Dateien (vom selben Tag) im Archivordner werden in dieser Version durch die umbenannten Dateien aus dem Arbeitsordner überschrieben. Als Datumsformat würde ich allerdings eher zu "2007-09-18" tendieren (und habe es oben auch so verwendet). Dieses lässt sich aber leicht ändern (siehe "Format(...)").
Das "Verschieben" wird als Kombination von "Kopieren" (mit Überschreiben schon vorhandener Zieldateien) und nachfolgendem Löschen der Quelldateien ausgeführt, wobei eine etwas sicherere Variante anstatt die kopierten Dateien zu löschen diese einfach von den nachfolgenden Dateien überschreiben ließe.
Zum Thema "aus den Dateien daten.xls und info.xls jeweils immer die ersten 3 Zeilen und die letzte Zeile löschen" wäre anzumerken, dass Excel-Dateien keine Zeilen enthalten, sondern etwa Tabllenblätter mit Zeilen, und dass ich ohne zusätzliche Informationen als die "ersten 3 Zeilen" die Zeilen 1 bis 3 und als "letzte Zeile" die Zeile 65536 oder ihr Excel 2007-Pendant betrachten würde (was ja vermutlich nicht gemeint sein dürfte ) ...
Grüße
bastla
Das Archivieren selbst ist rein handwerklich etwa so zu lösen:
Sub Archivieren()
Dim fso As Object, Dat As String, Dateien() As Variant, Datei As Variant
Const Arbeit As String = "D:\Arbeitsordner" 'Quellordner
Const Archiv As String = "D:\Archivordner" 'Zielordner
Dateien = Array("daten", "info") 'Liste der Dateien
Set fso = CreateObject("Scripting.FileSystemObject")
Dat = Format(Now, "YYYY-MM-DD") 'Datumsformat hier festlegen
For Each Datei In Dateien()
If fso.FileExists(Arbeit & "\" & Datei & ".xls") Then
fso.CopyFile Arbeit & "\" & Datei & ".xls", Archiv & "\" & Dat & "_" & Datei & ".xls", True
fso.DeleteFile (Arbeit & "\" & Datei & ".xls")
End If
Next
End Sub
Das "Verschieben" wird als Kombination von "Kopieren" (mit Überschreiben schon vorhandener Zieldateien) und nachfolgendem Löschen der Quelldateien ausgeführt, wobei eine etwas sicherere Variante anstatt die kopierten Dateien zu löschen diese einfach von den nachfolgenden Dateien überschreiben ließe.
Zum Thema "aus den Dateien daten.xls und info.xls jeweils immer die ersten 3 Zeilen und die letzte Zeile löschen" wäre anzumerken, dass Excel-Dateien keine Zeilen enthalten, sondern etwa Tabllenblätter mit Zeilen, und dass ich ohne zusätzliche Informationen als die "ersten 3 Zeilen" die Zeilen 1 bis 3 und als "letzte Zeile" die Zeile 65536 oder ihr Excel 2007-Pendant betrachten würde (was ja vermutlich nicht gemeint sein dürfte ) ...
Grüße
bastla
Hallo Bacaaardi!
Grüße
bastla
P.S.: Ich nehme an, Dein anderer Thread könnte mit einen Verweis auf diesen hier abgeschlossen werden ...
Vielen Dank, hat im Test teilweise geklappt ...
Das ist wenigstens einmal ein Feedback, mit dem man etwas anfangen kann ... Hier mein Makro (kann man die Archivierung hier einbauen??)
Obwohl nicht wirklich zu erkennen ist, an welcher Stelle die beiden Dateien gespeichert werden: ja - solange Du die Archivierung vorher machst .Grüße
bastla
P.S.: Ich nehme an, Dein anderer Thread könnte mit einen Verweis auf diesen hier abgeschlossen werden ...