Logfile schreiben

Bild

Betrifft: Logfile schreiben von: bastian
Geschrieben am: 13.03.2005 23:04:13

Hallo liebe ExcelExperten,

ich möchte ein Logfile für mein Makro schreiben. Das mache ich bisher so:

Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fs1, file
Dim combo As String
combo = path & "logfile.log"
Set fs1 = CreateObject("Scripting.FileSystemObject")
Set file = fs1.OpenTextFile(combo, ForAppending, TristateFalse)
file.Write check
file.Close

Nun ist es aber so, daß mehrere User gleichzeitig aus verschiedenden Anwendungen heraus dieses Makro starten könne, alle Logs aber in eine Datei geschrieben werden sollen. Es sind zwar nur maximal 4 User, aber ich habe trotzdem Bedenken das es zur Überschneidung von Zugriffen kommt, das zwei User gleichzeitig das Log schreiben wollen oder so.

Hat jemand einen Vorschlag wie ich das Lösen kann ?

Gruss & Dank,

Bastian

Bild


Betrifft: AW: Logfile schreiben von: Domke, Frank
Geschrieben am: 14.03.2005 11:21:44

Hallo Bastian,

wenn die Datei von jemanden geöffnet ist, müsste OpenTextFile einen Fehler erzeugen. Das heißt, Du muss in der Fehlerroutine vielleicht im Abstand von 1 sek. und vielleicht 3x versuchen, die Datei zu öffnen. In dieser Zeit sollte die Funktion Check (oder ist das eine Variable) des anderen Users fertig sein und somit die Datei wieder verfügbar sein.
Die Anzahl der Wiederholungen sowie die Pausen dazwischen musst Du entsprechend Deiner Umgebung (schnelles oder langsames Netz etc.) anpassen.
Viel Erfolg!
Frank.


Bild


Betrifft: AW: Logfile schreiben von: bastian
Geschrieben am: 14.03.2005 22:55:47

Hi Frank,

das ist eine gute Idee, so werde ich es versuchen ! Vielen Dank !

Bastian


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Logfile schreiben"