![]() |
||
![]() |
Hintergrundfarbe abhängig vom ZellenwertIch suche eine Möglichkeit, unter Excel 7.0 Zellen mit unterschiedlichen Hintergrundfarben in Abhängigkeit vom jeweiligen Zellenwert zu formatieren. Beispielsweise soll Excel Zellenwerte unter 10 mit gelbem, über 15 mit rotem Hintergrund kennzeichnen. Dabei soll sich die Färbung automatisch über mehrere Zellen erstrecken. Wie kann ich das erreichen? Ihr Problem läßt sich nicht ganz einfach lösen, da Excel keine Ereignisse unterstützt. Sie können also den Inhalt der Zelle nicht direkt nach der Eingabe überprüfen. Die Idee, eine benachbarte Spalte mit einer auf die jeweilige Zelle verweisenden Funktion auszustatten, scheitert ebenfalls an Excels Beschränkungen: Aus benutzerdefinierten Tabellen-Funktionen lassen sich keine Zellen formatieren. Sub SetColor ()¶In der ersten Zeile schreibt Excel die aktive Spalte in die Variable SelCol. Die beiden folgenden Zeilen initialisieren zwei Variablen: i als Zähl-Variable und BreakOff als Abbruch-Bedingung. Falls Sie das Einfärben nicht in der ersten Zeile beginnen wollen, können Sie i entsprechend erhöhen. Die folgende While-Schleife durchläuft Excel so lange, bis BreakOff den Wert Wahr zugewiesen bekommt. Das geschieht erst dann, wenn die Abbruch-Bedingung der siebten Zeile erfüllt ist. In diesem Fall handelt es sich um eine leere Zelle. Falls Sie jedoch leere Zellen zulassen wollen, können Sie am unteren Ende des Überprüfungsbereichs etwa das Wort Endeeingeben und die Abbruch-Bedingung auf Ende abändern. Die IF-Abfragen überprüfen den jeweils aktuellen Zellenwert und formatieren den Hintergrund mit der entsprechenden Farbe. Um dem Makro eine Tastenkombination zuzuordnen, rufen Sie den Befehl Extras – Makro auf. Im folgenden Dialog wählen Sie das Makro SetColor aus und klicken auf den Button Optionen. Im Dialog Makro-Optionen markieren Sie im Bereich Zuweisen den Eintrag Shortcut und geben im Feld dahinter einen Buchstaben ein. Sobald Sie alles bestätigt haben, können Sie den Cursor auf der entsprechenden Zahlenreihe positionieren und die Tastenkombination ausführen. Je nach Geschwindigkeit Ihrer Grafikkarte können Sie nun Excel beim korrekten Formatieren Ihrer Zellenhintergründe zusehen. Sobald sich Werte ändern, müssen Sie jedoch das Makro erneut starten. |
![]() |