AW: Meldung wenn Datei geändert wurde
06.03.2013 11:57:32
Klaus
Hallo,
ich hab grad eine ganz wirre Idee.
mit dem Makro:
Sub WriteUpdateTime()
Dim LResult As Date
LResult = FileDateTime("C:\Dateien\Dateiname.xls")
Range("A1").Value = LResult
End Sub
Kannst du dir den Zeitpunkt der letzten Speicherung einer Datei in die Tabelle schreiben.
Wenn du dieses Makro mit "onTime" alle 5 Minuten aufrufst, hast du immer den Zeitpunkt der letzten Speicherung in einer Datei stehen.
das ganze KÖNNTE dann so funktionieren:
Public NextTime As Date
Option Explicit
Sub WriteUpdateTime()
Dim LResult As Date
LResult = FileDateTime(.Range("D6").Value & "\" & Range("F6").Value)
Range("A1").Value = LResult
If Range("A1").Value = Range("A2").Value Then
'nix
Else
'MsgBox ("ES WURDE GEÄNDERT")
End If
Start
End Sub
Sub Start()
NextTime = Now + TimeSerial(0, 1, 0)
Application.OnTime NextTime, "WriteUpdateTime", , True
End Sub
Sub Ende()
Application.OnTime NextTime, "WriteUpdateTime", , False
End Sub
Sub CheckFileMod()
WriteUpdateTime
Range("A2").Value = Range("A1").Value
End Sub
Du erstellst ein frisches Workbook mit diesen Makros. Beim Start rufst du "CheckFileMod" auf, das schreibt dir die letzte Speicherung in A1 und A2.
"WriteUpdateTime" ruft sich jede minute erneut selbst auf und schreibt die letzte Speicherungszeit in A1. Sind A1 und A2 nicht identisch, kommt die MsgBox.
Vergiss nicht, das ganze OnTime getue mit dem Makro "Ende" wieder zu beenden, wenn du die Mappe schließt!
Ist aus dem Ärmel geschüttelt und nicht getestet. Den Usernamen bekommt man bestimmt auch noch dazu, weiss ich grad nicht wie. Vielleicht klappt das ja. (Bedenke: schreibst du den Usernamen dazu, könnte das als Überwachung ausgelegt werden)
Grüße,
Klaus M.vdT.