Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
748to752
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
748to752
748to752
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datei je nach Zeit überschreiben oder neu erstelle

Datei je nach Zeit überschreiben oder neu erstelle
30.03.2006 07:13:09
Thomas
Einen Guten Morgen an alle bereits schon Aktiven!
Ich habe wiedereinmal ein Problem, mitwelchem ich seit Tagen kämpfe und zu keiner Lösung gelange.
Mit folgender Zeile erstelle ich eine automatische Kopie der Excel-Datei.
ActiveWorkbook.SaveCopyAs Filename:="F:\XXX\YYY" & "\" & Format(Now, "DD-MM-YY hh:mm:ss") & " " & strUsergross & "-Backup.XLS"
Dabei steht in der strUsergross die Variable des jeweils eingeloggten Users. Die Datei wird bei jedem öffnen als Sicherheitsdatei mit obiger Kennung abgelegt.
Da im Laufe der Zeit sehr viele Dateien entstehen, suche ich nach Lösungen, diese einzugrenzen.
Ich habe mir folgendes überlegt. Gerne möchte ich für jeden User eine Datei anlegen, und zwar jeden Vormittag eine und jeden Nachmittag. D.h. ab 00:00 Uhr bis 11:59 Uhr soll eine Userspezifische Vormittagsdatei erstellt werden, ab 12:00 Uhr bis 23:59 eine entsprechende Nachmittagsdatei. Wird die Datei zum erstenmal geöffnet wird die Kopie z.B. xxx - Vormittag angelegt, dann soll sie den ganzen Vormittag überschrieben werden - bis ab 12:00 Uhr die Nachmittagsdatei angelegt wird.
Wie erstelle ich die Zeitfunktion mit automatischer Erkennung ob eine Datei existiert und überschrieben werden darf oder nicht. Es soll keine Abfrage stattfinden, der User soll vom "Backup" nicht gestört werden.
Könnt ihr mir helfen. Ich glaube es ist nicht so schwierig, ich weiss nur nicht wie ich beginnen soll.
Danke für Eure Hilfe, es grüsst
Thomas

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei je nach Zeit überschreiben oder neu erstelle
30.03.2006 09:05:07
IngGi
Hallo Thomas,
mein Vorschlag:
Dim fso As Object
Dim fo As Object
Dim f As Object
Dim blnNeu As Boolean
Dim Zeit As String
Zeit = Format(Now, "DD-MM-YY hh:mm:ss")
Set fso = CreateObject("Scripting.FileSystemObject")
Set fo = fso.GetFolder("C:\Temp\") 'Auf deinen Ordner in F:\ anpassen
blnNeu = True
For Each f In fo.Files
If Right(f.Name, Len(f.Name) - InStrRev(f.Name, " ")) = strUsergross & "-Backup.XLS" Then
If DateValue(Left(f.Name, 8)) = DateValue(Zeit) Then
If (TimeValue(Zeit) <= 0.5 And TimeValue(Mid(f.Name, 10, 8)) <= 0.5) Or _
(TimeValue(Zeit) > 0.5 And TimeValue(Mid(f.Name, 10, 8)) > 0.5) Then
blnNeu = False
End If
End If
End If
Next 'f
If blnNeu = True Then
ActiveWorkbook.SaveCopyAs Filename:="F:\XXX\YYY\" & Zeit & " " & strUsergross & "-Backup.XLS"
Else
ActiveWorkbook.SaveCopyAs Filename:=f.Path
End If
Gruß Ingolf
Anzeige
Komme nicht weiter
06.04.2006 07:03:29
Thomas
Hallo Ingolf
Entschuldige die unendlich lange Zeit bis ich mich melde.
Habe Deine Lösung auf mehrere Arten versucht nachzuvollziehen - ging nicht. Leider habe ich nur sehr beschränkte Kenntnisse des Programmierens.
Versuche ich Deinen Vorschlag zum erstenmal, wird gar nichts gespeichert - woran liegt das? Ich muss doch nur die beiden Pfade anpassen?
Kannst Du mir weiterhelfen?
Es grüsst
Thomas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige