![]() |
||
![]() |
Änderungsdatum einzelner Zellen automatisch protokollierenIn einer Kalkulationstabelle möchten Sie das Datum der letzten Änderung einiger wichtiger Zellen erfassen. Die manuelle Eingabe ist Ihnen dafür aber zu umständlich. Bisherige Versuche mit der Funktion »HEUTE()« haben leider noch nicht zum Erfolg geführt. Um Änderungen an den Zellen automatisch zu erfassen und den Zeitpunkt gleichzeitig zu protokollieren, müssen Sie ein Ereignismakro verwenden. Öffnen Sie zunächst Ihre Kalkulation und führen Sie dort den Befehl »Extras | Makro | Visual Basic-Editor« aus. Mit »Ansicht | Projektexplorer« öffnen Sie das Fenster des Projektexplorers. Dort markieren Sie in der Struktur die gewünschte Tabelle und wählen dann »Ansicht | Code«. Nun geben Sie rechts im neuen Codefenster folgende Makrozeilen ein oder Sie kopieren sie von der Heft-CD unter CHIP-Code Praxis03: Private Sub Worksheet_Change(ByVal Target As Excel.Range)Beenden Sie die Eingabe mit »Datei | Schließen und zurück zu Microsoft Excel«. Dieses Ereignismakro ist dem einzelnen Tabellenblatt zugeordnet. Sobald sich der Wert einer beliebigen Zelle dieser Tabelle ändert, wird das Makro automatisch ausgeführt. Die Variable »Target« enthält die Information über die geänderte Zelle. Innerhalb des Makros prüfen Sie nun mit »Bedingungen« , ob eine zu überwachende Zelle das Makro ausgelöst hat. In diesem Fall weisen Sie einer zugehörigen Protokollzelle mit der Funktion »Now« das aktuelle Datum einschließlich der Uhrzeit zu. Das Beispielmakro erwartet die Zellen in der ersten Spalte und prüft die Zeilen »4« bis »6«. Bei einer Änderung protokolliert es in der dritten Spalte derselben Zeile den Zeitpunkt. Diese Bedingungen passen Sie im Listing beliebig an, die passenden Stellen finden Sie in der Datei auf der Heft-CD gut kommentiert. |
![]() |