Änderungen an einer Datei protokollieren
Wenn mehrerer Mitarbeiter an oder mit einer Excel-Datei arbeiten, dann werden fast immer auch Änderungen an den Daten vorgenommen. Manchmal ist es dann auch hilfreich, dass in irgend einer Form festgehalten wird, wer wann welche Änderung vorgenommen hat. Das kann aus Gründen der Kontrolle oder der besseren Nachvollziehbarkeit wegen geschehen.
Die eine Möglichkeit wäre, jeden der Beteiligten anzuhalten, jegliche Änderung an einer Tabelle selbst in einem besonderen Bereich festzuhalten. Das könnte dann beispielsweise in solch einem Tabellenaufbau geschehen:
Sie sehen, dass ab Spalte D der alte Wert (der Preis aus Spalte B) eingetragen werden soll sowie der eigene Name und das Datum der Änderung sowie die Zeit (Timestamp, Zeitstempel). Die Erfahrung zeigt aber, dass hier nicht jede Änderung protokolliert wird. Das muss kein böser Wille sein, meist ist es Nachlässigkeit, gefühlter Zeitdruck oder ein ähnlicher Grund.
Da bietet es sich förmlich an, zumindest die letzte Änderung automatisch zu protokollieren. Das kann ganz offen geschehen wie auch hier zu sehen oder in versteckter Form. Im letztgenannten Falle müssen aber alle Beteiligten drüber informiert werden, dass ein solches Protokoll (versteckt) geführt wird. Hier in diesem Beitrag wird nur die „offene” Variante besprochen, wie auch in der Musterdatei. Und es wird auch nur die letzte Änderung dargestellt.
Die Musterdatei mit dem oben gezeigten Aufbau können Sie hier herunterladen. Es handelt sich um eine 2007er Version mit Makros. – Jede Änderung des Preises wird automatisch ohne einen Eingriff des Users protokolliert. Da diese Zellen gegen versehentliches oder gewolltes Überschreiben geschützt sind, kann nur das Makro Änderungen vornehmen. Wobei es für einen geübten User relativ leicht ist, diese Funktionalität auszuhebeln. Beachten Sie bitte beim Aufruf, dass Sie die Ausführung von VBA-Code prinzipiell getrennt bestätigen müssen. Mehr Details dazu finden Sie hier in unserem Blog. Einige Hinweise zu der Datei sind dennoch erforderlich:
-
- Das Passwort beim ersten Aufruf ist GMG-CC.de und bereits so im Code festgelegt. Sie können es im Code löschen oder Ihren Wünschen entsprechend anpassen.
- Es existieren zwei Versionen des Codes. Im Kommentar ist erklärt, wie die Unterschiede sind.
- Für den Benutzernamen gibt es zwei Möglichkeiten: Den Anmeldenamen des Excel und den des Windows. Die können durchaus unterschiedlich sein. Bitte kommentieren Sie eine Zeile im Code aus oder stellen Sie die Reihenfolge um. Die beiden Zeile Code sind:
User = Environ("UserName") 'Windows-Username
und
User = Application.UserName 'Excel User-Name
- Beim Timestamp (Zeitstempel) können Sie das gewünschte Format im Code den Wünschen oder Erfordernissen anpassen.
- Beachten Sie bitte die Anmerkungen in Sachen Copyright.
Sollten Sie einen Ausbau, eine Erweiterung des Codes oder eine Anpassung der Datei wünschen, beispielsweise für eine Chronologie der Änderungen wenden Sie sich bitte an uns. Unser Partner und Sponsor GMG Computer-Consulting hilft Ihnen gerne weiter.
Ergänzung Februar 2015: Eine sehr schlichte Version, wo nur der Zeitstempel in eine Spalte eingetragen wird, finden Sie hier im Blog.
Ergänzung Juni 2015: Alle Änderungen in einem getrennten Blatt als Chronik fortlaufend erfassen. Laden Sie hier die Musterdatei mit dem Code herunter.