![](/file/23459/chip_04_2004.iso/images/spacing.gif) |
Farbige Zellen – die zweite
In der Ausgabe 2/98 hat WIN einen Tip zur wertabhängigen Einfärbung von Excel-Zellen gegeben. Unser Leser Hans R. Vaupel hat uns nun eine ähnliche Lösung geschickt, die noch einfacher funktioniert als das VBA-Modul mit den IF-Abfragen. Die Lösung baut auf zwei Komponenten auf: Dem OnEntry-Ereignis und einer Prüfprozedur. Die Befehlsfolge der beiden Prozeduren finden Sie im Kasten „Feiertage einfärben“ auf dieser Seite, das Listing auf der aktuellen Monats-CD. Die Auto_Open–Prozedur weist bei jedem Öffnen der Arbeitsmappe dem OnEntry-Ereignis des Tabellenblatts Tabelle1 den Aufruf Zellfarbe zu. Falls die zu kennzeichnenden Daten auf einem anderen Tabellenblatt stehen, ersetzen Sie einfach den Wert Tabelle1 durch den Tabellennamen. Das Ereignis OnEntry bewirkt, daß Excel nach jeder Zellwertänderung - durch Eingabe oder Verknüpfung - in der Tabelle1 die Prozedur Zellfarbe ausführt. Sie können mit diesem Ereignis auch jede andere, von Ihnen gewünschte Prozedur starten. Die erste Zeile des zweiten Makros dient der Fehlerbehandlung. Sobald ein Fehler auftritt, verzweigt die Prozedur an die Marke FehlerPruefen. Anschließend übernimmt die Variable z den Zellwert und färbt den Hintergrund der Zelle. Bitte beachten Sie, daß diese Lösung nicht wie die in Ausgabe 2/98 auf eine Spalte beschränkt ist, sondern für alle Zellen des Tabellenblatts gilt. Um sie auf eine Spalte einzuschränken, können Sie zusätzlich eine Prüfung auf Spalte einbauen. Dazu ergänzen Sie die erste If–Anweisung wie folgt:
If z <> ““ And ActiveCell.Column = 2 Then Für das Eingrenzen auf eine Zeile verwenden Sie anstelle Column das Schlüsselwort Row. Falls Sie auto- matisch große Datenmengen in die Tabelle schreiben, kann diese Lösung allerdings auch zu einer recht großen Zeitverzögerungen führen.
|
![](/file/23459/chip_04_2004.iso/images/spacing.gif) |