![]() |
||
![]() |
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. Als L÷sung bleiben Ihnen daher nur eine Prozedur oder ein Makro, das sich mit Hilfe einer Tastenkombination starten lΣ▀t. Dieses Makro k÷nnte etwa die ausgewΣhlte Spalte durchsuchen und jede Zelle auf ihren Inhalt ⁿberprⁿfen. In AbhΣngigkeit vom Inhalt bestimmt es dann die Hintergrundfarbe. Um das Makro anzulegen, wΣhlen Sie den Befehl Einfⁿgen û Visual Basic Modul und geben in den Editor folgende Befehle ein oder kopieren sie aus der Datei ZFARBIG.TXT, die Sie auf der aktuellen WIN-Monats-CD und in den Online-Foren finden: Sub SetColor ()╢ SelCol = ActiveCell.Column╢ i = 0╢ BreakOff = False╢ While Not BreakOff╢ i = i + 1╢ ActiveSheet.Cells (i,SelCol) .Activate╢ If Not ActiveCell.Value = äô Then╢ If ActiveCell.Value < 10 Then ActiveCell.Interior.ColorIndex = 6╢ If ActiveCell.Value >= 10 Then ActiveCell.Interior.ColorIndex = 4╢ If ActiveCell.Value >= 15 Then ActiveCell.Interior.ColorIndex = 3╢ Else╢ BreakOff = True╢ End If╢ Wend╢ End Sub╢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. |
![]() |