Das Arbeiten mit bedingten Formatierungen Einleitung Oft steht die Aufgabe, dass die Gestaltung (Formatierung) eines Tabellenblattes den jeweiligen Gegebenheiten angepasst werden soll. Das kann zum Beispiel der Fall sein, wenn der Mitarbeitereinsatz farbig gestaltet werden soll. D.h., wenn man bestimmten Mitarbeitern immer eine bestimmte Farbe zuordnen möchte, um besser zu erkennen an welchem Tag oder Ort sie eingesetzt sind. Ein anderes Beispiel könnte die Gestaltung einer Monatsplanung sein, die dynamisch auf die Eingabe von Monats- und Jahreszahlen reagiert. Dabei sollen z.B. die Sonnabende und Sonntage rot dargestellt werden. Durch die Veränderung der Datumsangaben ändert sich natürlich die Lage der beiden Wochentage auf dem Tabellenblatt. In beiden Beispielen müsste bei manueller Bearbeitung stets eine aufwendige Umformatierung des entsprechenden Tabellenblattes vorgenommen werden. Besser wäre es jedoch, wenn die Formatierung den Veränderungen im Tabellenblatt automatisch folgen würde. Diese Aufgabe kann mit Hilfe der „Bedingten Formatierung“ gelöst werden. Dem Leser ist sicherlich bekannt, dass man bestimmte Formatierungen in Abhängigkeit von den Zelleinträgen auch mit Hilfe der „Benutzerdefinierten Zahlenformatierung“ vornehmen kann. Dabei bleiben jedoch eine Reihe Wünsche offen. Das betrifft z.B. Schriftart, Schriftgröße, Schriftstil, Hintergrundgestaltung u.v.a. mehr. Weiterhin ist es oft notwendig, benachbarte Zellen oder auch Zellbereiche in einer bestimmten Art, in Abhängigkeit des Inhaltes einer bestimmten Zelle zu formatieren. Diese Probleme können nur mit Hilfe geschriebener Makros oder der „Bedingten Formatierung“ (ab EXCEL 97) gelöst werden. An Hand ausgewählter Beispiele einfacher als auch komplexer Art sollen dem Leser die Möglichkeiten der „Bedingten Formatierung“ nahe gebracht werden. Inhaltsverzeichnis 1 1.1 1.1.1 1.1.2 1.1.3 1.2 2 2.1 2.2 2.2.1 2.2.2 2.2.3 2.2.4 3 4 4.1 4.2 4.2.1 4.2.2 4.2.3 Die einfache bedingte Formatierung Die bedingte Formatierung mit einer Bedingung Das Erstellen einer benutzerdefinierten Formatierung Ändern, Hinzufügen bzw. Entfernen von benutzerdefinierten Formatierungen Suchen nach Zellen mit bedingten Formatierungen Die bedingte Formatierung mit zwei oder drei Bedingungen Die bedingte Formatierungen unter Einsatz von Formeln Allgemeine Betrachtungen Ausgewählte Beispiele zur Verwendung von Formeln Farbliche Hinterlegung eines Datums im Falle eines Sonntags Farbliche Hervorhebung aller Umsätze unterhalb des Durchschnittsumsatzes Farbliche Hervorhebung aller durch 13 teilbaren Zahlen eines bestimmten Bereiches Farbliche Hervorhebung aller markierten Zellen in Abhängigkeit bestimmter Zellen Benutzerdefinierte oder Grundformatierung mit überlagerter bedingter Formatierung Angewandtes Beispiel zur Arbeit mit der bedingten Formatierung Aufgabenstellung Lösung Ermitteln geleisteter Arbeitsstunden Bestimmen der Tabellenlänge in Abhängigkeit von Jahr und Monat Formatierung des Monatsplanes 1 Die einfache bedingte Formatierung Bei der einfachen Formatierung wird der Wert, der sich in den markierten Zellen befindet ausgewertet. Dazu muss eine entsprechende Bedingung (Abfrage) gestellt werden. Wird die Bedingung erfüllt, wird die entsprechende Formatierung vorgenommen. Anderenfalls bleibt der vordefinierte Zustand der entsprechenden Zellen erhalten. 1.1 Die bedingte Formatierung mit einer Bedingung 1.1.1 Das Erstellen einer einfachen benutzerdefinierten Formatierung Zur Arbeit mit der bedingten Formatierung ist in folgenden Schritten vorzugehen: (a) (b) (c) Auswählen/Markieren der entsprechenden Zellen Aufruf des Menüs Format – Bedingte Formatierung Auswahl des Kriteriums „Zellwert ist“ (d) (e) (f) Festlegen der Bedingung (Bedingungen) Festlegen der Formatierungen Bestätigen der Einstellungen mit „OK“ Im oben dargestellten Beispiel soll davon ausgegangen werden, dass in einer Firma der kritische Wert der Monatsumsätze bei 15.000,00 € liegt. Aus diesem Grunde sollen in der Tabelle alle Werte kleiner 15.000,00 € rot dargestellt werden. Die entsprechende Lösung ist im oben dargestellten Dialogfeld zu sehen. 1.1.2 Ändern, Hinzufügen bzw. Entfernen von benutzerdefinierten Formatierungen Für das Ändern, Hinzufügen oder Entfernen von benutzerdefinierten Zellen die entsprechende Zellen zu markieren und in das Menü der benutzerdefinierten Formatierung zu wechseln. Ändern der bedingten Formatierung Hier können zwei Parameter geändert werden. Einmal kann es die Formatierung sein, dann ist die Schaltfläche „Format“ auszulösen. Im Anschluss müssen die gewünschten Formatierungen geändert werden. Anderenfalls können natürlich auch die entsprechenden Bedingungen geändert werden. Hinzufügen von bedingten Formaten Für diesen Fall ist, wie im Kapitel 1.2 zu verfahren Löschen von bedingten Formatierungen Nach dem Auslösen der Schaltfläche „Löschen“ erscheint folgendes Dialogfeld. In diesem ist dann die zu löschende Bedingung auszuwählen und mit „OK“ zu bestätigen. 1.1.3 Suchen nach Zellen mit bedingten Formatierungen Sollte man nicht mehr wissen, wo er benutzerdefinierte Formatierungen eingesetzt hat; kann man mit folgender Vorgehensweise diese auffinden: (a) Aufrufen des Menüs „Bearbeiten – Gehe zu“ (b) Auswählen der Schaltfläche „Inhalte“ Als Ergebnis werden alle mit einer bedingten Formatierung versehenen Zellen markiert dargestellt. 1.2 Die bedingte Formatierung mit zwei oder drei Bedingungen Bei der Nutzung von mehreren Bedingungen wird wie im Punkt 1.1 a-d verfahren. Zur Festlegung der zweiten oder auch der dritten Bedingung ist im Dialogfeld „Bedingte Formatierung“ die Schaltfläche „Hinzufügen“ auszulösen. Anschließend sind die Punkte c und d zu wiederholen. Dabei ist zu beachten, dass EXCEL nur das Formulieren von maximal drei Bedingungen zulässt. In diesem Beispiel werden die vier als Dozenten eingesetzten Dozenten mit unterschiedlichen Farben, Meier (rot), Lehmann (blau), Werner (grün) und Schmidt (in der Vorformatierung – schwarz), dargestellt. Leser, die sich mit der benutzerdefinierten Zahlenformatierung schon weitergehend beschäftigt haben, wissen, dass auch hier die Anzahl der Bedingungen auf 3 beschränkt ist. Man kann also behaupten, dass EXCEL mit der bedingten Formatierung auf die Lösung mit benutzerdefinierten Zahlenformaten aufsetzt. Weiter muss berücksichtigt werden, dass EXCEL mit Hilfe der bedingten Formatierung ähnlich wie eine Mehrfachfachverzweigung reagiert. Mehrfachverzweigung Eine Mehrfachverzweigung ist mithilfe des untenstehenden Programmablaufplanes und des dazugehörigen Struktogramms dargestellt. Bedingung 1 erfüllt ? Nein Start Bedingung 2 erfüllt ? Nein Bedingung 1 erfüllt? Ja Ja Ja Nein Bedingung 3 erfüllt ? Ja Nein Bedingung 2 erfüllt? Zustand der Zelle bleibt erhalten Ja Formatierung 3 wird ausgeführt Formatierung 2 wird ausgeführt Formatierung 1 wird ausgeführt Nein Bedingung 3 erfüllt? Ja Nein Zustand der Zelle bleibt erhalten Formatierung 3 wird ausgeführt Formatierung 2 wird ausgeführt Formatierung 1 wird ausgeführt Ende Eine Mehrfachverzweigung entsteht dadurch, dass ein oder beide Zweige einer zweiseitigen Verzweigung wieder eine neue Verzweigung darstellt. In unserem konkreten Falle bedeutet das, daß bei Erfüllung der ersten gestellten Bedingung die folgende Bedingung nicht mehr abgefragt wird. Das hat entsprechende Konsequenzen für die Formatierung. Das soll einmal an folgendem Beispiel demonstriert werden Im hier aufgeführten Beispiel wurde angenommen, dass EXCEL zuerst feststellt. dass Meier in der Zelle steht. Deshalb wurde der gefundene Name rot dargestellt. Dann wurde angenommen, dass EXCEL nun die zweite Bedingung prüft und Meier obendrein noch unterstreicht. Wie im nebenstehenden Bild jedoch zu sehen ist, wird die Unterstreichung nicht ausgeführt. Da EXCEL schon in der ersten Bedingung den Namen Meier gefunden hat, führt er diese aus und beendet die Prüfung. Richtig wäre es gewesen, wenn alle notwendigen Formatierungen, da sie ja für den gleichen Inhalt zutreffend sind, gleich bei der ersten Bedingung festgelegt werden. 2 Die bedingte Formatierungen unter Einsatz von Formeln 2.1 Allgemeine Betrachtungen Neben der im Kapitel 1 dargestellten Möglichkeiten bei der bedingten Formatierung konstante Werte abzufragen, existiert weiterhin die Möglichkeit eine Formatierung in Abhängigkeit von Ergebnissen einer Berechnung oder auch einer logischen Auswertung vorzunehmen. So kann z.B. aus einem Datum der Wochentag ermittelt und mit einer Farbe hinterlegt werden, wenn es sich um einen Sonntag handelt. Beim Einsatz von Formeln sollte jedem klar sein, dass alle in EXCEL integrierten Funktionen, wie WOCHENTAG, MITTELWERT, REST, MAXIMUM usw. genutzt werden können. Dabei können auch die Bool’schen Operatoren UND, ODER, NICHT angewendet werden. Dabei ist es nicht nur möglich den Inhalt der aktiven Zelle zu prüfen, sondern es kann eine aktive Zelle auch in Abhängigkeit der Einträge einer oder mehrerer anderer Zellen formatiert werden. Hier können absolute, relative und auch Mischbezüge verwendet werden. Das hat vor allem dann Bedeutung, wenn ganze Zellbereiche abgefragt werden sollen. Zur Arbeit mit der bedingten Formatierung ist in folgenden Schritten vorzugehen: (a) (b) (c) (d) (e) (f) Auswählen/Markieren der entsprechenden Zellen Aufruf des Menüs Format – Bedingte Formatierung Auswahl des Kriteriums „Formel ist“ Festlegen der Bedingung (Bedingungen) mit Formeln Festlegen der Formatierungen Bestätigen der Einstellungen mit „OK“ Auch hier können natürlich bis zu drei Bedingungen festgelegt werden. 2.2 Ausgewählte Beispiele zur Verwendung von Formeln 2.2.1 Farbliche Hinterlegung eines Datums im Falle eines Sonntags Zur Lösung dieser Aufgabe wird die Funktion WOCHENTAG herangezogen. Dabei muss berücksichtigt werden, dass der Sonntag als Ergebnis der Berechnung eine 1 ergibt (Datumsformat 1900). Der Samstag ergibt als Ergebnis eine 7. Alle anderen Wochentage werden entsprechend weiter gezählt. 2.2.2 Farbliche Hervorhebung aller Umsätze unterhalb des Durchschnittsumsatzes In diesem Falle wird neben der Nutzung der Funktion Mittelwert auch auf die Arbeit mit Zellbezügen zugegriffen. Hier wird jedoch mit relativen Bezügen gearbeitet. Damit passt Excel die Abfrage über den gesamten Bereich (hier B4:B15) an. 2.2.3 Farbliche Hervorhebung aller durch 13 teilbaren Zahlen eines bestimmten Bereiches Im oben dargestellten Beispiel werden die durch 13 teilbaren Zahlen rot und in Fettschrift dargestellt. 2.2.4 Farbliche Hervorhebung aller markierten Zellen in Abhängigkeit bestimmter Zellen Alle bis dahin aufgezeigten Beispiele beziehen sich immer nur auf die einzelne markierte Zelle. Im folgenden Beispiel wird aufgezeigt, dass auch Zellen, die nicht den entsprechenden Wert enthalten, in Abhängigkeit einer anderen oder auch anderer Zellen eine entsprechende Formatierung erfahren können. Im hier dargestellten Beispiel werden alle Zellen des Bereiches A1:E26 mit gelber Farbe hinterlegt, wenn in der entsprechenden Zelle der Spalte A aus dem dort angegebenen Datum ein Sonntag oder ein Samstag mit der Funktion WOCHENTAG errechnet wurde. Dazu ist es jedoch erforderlich, dass der entsprechende Bereich vorher markiert wurde. Weiterhin ist auch zu beachten, dass vor Spaltenangabe ein Dollar-Zeichen gesetzt wird. Vor der Zeilenangabe darf es jedoch nicht erscheinen. Das erwirkt, dass im gesamten markierten Bereich immer der entsprechende Zeileninhalt der Spalte A ausgewertet wird. Sollte das Dollarzeichen vor dem A fehlen, würde die Spalte B den Inhalt der Spalte A, die Spalte C den Inhalt der Spalte B usw. auswerten. 3 Benutzerdefinierte oder Grundformatierung mit überlagerter bedingter Formatierung Die Bedingte Formatierung kann jedoch nicht nur allein, sondern auch in Kombination einer Grundformatierung oder einer benutzerdefinierten Formatierung eingesetzt werden. Das erhöht die Variabilität, denn die benutzerdefinierte Formatierung bietet ja selbst schon die Formatierung nach drei Bedingungen. Dazu kann man über die bedingte Formatierung noch einmal drei Formatierungsarten „überstülpen“. Dabei ist natürlich zu beachten, dass die benutzerdefinierte Formatierung nicht alles leisten kann, was die bedingte Formatierung und umgekehrt, dass die bedingte Formatierung nicht alles leisten kann, was die benutzerdefinierte Formatierung zu bieten hat. Es kommt also auf eine sinnvolle Kombination beider Formatierungsarten an. Entscheidend ist jedoch, dass zuerst die benutzerdefinierte oder auch eine Grundformatierung ausgeführt werden sollte. Danach sollte dann die bedingte Formatierung aufgesetzt werden. Im oben dargestellten Beispiel ist der Zahlenbereich von 1 bis 150 farblich in drei Teilbereiche eingeteilt worden. Die Zahlen 1 – 50 wurden blau, die Zahlen 51 – 100 schwarz und die Zahlen 101 – 150 wurden rot dargestellt. Das wurde mithilfe der benutzerdefinierten Zahlenformatierung realisiert. Das entsprechende Format ist unten dargestellt. [Blau][<=50]0 ;[Rot][>100]0 ;0 Anschließend wurde mit Hilfe der bedingten Formatierung festgelegt, dass alle durch 7 teilbaren Zahlen grün, gelb hinterlegt und mit Rahmen versehen dargestellt werden sollen. An Stelle der festgelegten 7 innerhalb der bedingten Formatierung kann auch eine Zelle außerhalb des formatierten Bereiches angegeben werden, die eine jeweils eine andere zu prüfende Zahl aufnimmt. Daurch wird das Tabellenblatt, z.B. für einen Lehrer, noch variabler. 4 Angewandtes Beispiel zur Arbeit mit der bedingten Formatierung 4.1 Aufgabenstellung Es ist ein immerwährender Monatsplan zu erstellen, der folgendes Aussehen besitzt und die unten dargestellten Forderungen erfüllen soll: 4.2 1 Es soll die Möglichkeit bestehen, dass die Monats- und Jahreszahlen geändert werden können. 2 An Hand des Monats und der Jahreszahl soll das richtige Datum und der richtige Wochentag in die entsprechende Zeile eingetragen werden. 3 Die Tabelle soll immer mit dem letzten Tag des angegebenen Monats enden. Dabei soll auch die Schaltjahresregelung beachtet werden. 4 Die Zeilen für die Samstage und Sonnabende sollen rot hinterlegt werden. 5 Zwischen Sonn- und Montagen als auch unter der letzten Zeile der aktuellen Monatstabelle sollen dünne Linien gezogen werden. 6 Veränderungen von Monats- oder Jahresangaben sollen auch eine dynamische Veränderung der Formatierungen für die entsprechende Monatstabelle hervorrufen. Lösung Bei der Erläuterung der Lösung soll nicht nur auf die bedingte Formatierung sondern auch auf andere Probleme im Zusammenhang mit der Erstellung von Monatsplänen und Zeitberechnungen eingegangen werden. 4.2.1 Ermitteln geleisteter Arbeitsstunden Bei der Ermittlung von Arbeitstunden und dem Vergleich mit vorgegebenen Sollstunden kann es zu negativen Zeitdifferenzen kommen. Deshalb sollte hier auf das Datumsformat 1904 übergegangen werden. Diese Einstellung kann wie folgt vorgenommen werden: Extras – Optionen – Berechnen – 1904-Datumswerte Außerdem muss die Formatierung für die Ist-, Soll- und Differenzstunden benutzerdefiniert wie folgt erstellt werden: [hh]:mm Das ist deshalb notwendig, damit eine Gesamtsumme angezeigt wird. Anderenfalls rechnet EXCEL jeweils die entsprechenden Stunden in Tage um und gibt nur die Reststunden aus. Ansonsten sind in den Zellen folgende Formeln hinterlegt, die dann entsprechend in anderen Spalten kopiert werden müssen. 4.2.2 I7 =SUMME(I12:I42) I8 =I7-I6 Bestimmen der Tabellenlänge in Abhängigkeit von Jahr und Monat Theoretische Grundlagen An dieser Stelle müssen die entsprechenden Bedingungen für die einzelnen Monatstag abgefragt werden. 1 Alle Tage eines Monats bis zur 28 können direkt in die Zellen A12:A31 eingetragen werden, da alle Monate des Jahres mindestens 28 Tage besitzen. Nutzen Sie dabei die AutoAusfüll-Funktion. 2 Der Tag 30 darf nur nicht erscheinen, wenn es sich um den Monat Februar handelt. 3 Der Tag 31 darf nur erscheinen, wenn es sich um die Monate Januar, März, Mai, Juli, August, Oktober oder Dezember handelt. 4 Besondere Bedeutung besitzt der Tag 29. Hier muss eine besondere Prüfung vorgenommen werden, wenn es sich um den Monat Februar handelt. Wie ja allgemein bekannt ist, besitzt der Monat Februar 28 Tage, wenn es sich um ein normales Jahr handelt. Im Schaltjahr besitzt er jedoch 29 Tage. Die meisten Nutzer gehen davon aus, dass jedes vierte Jahr, oder jede Jahreszahl, die durch 4 teilbar ist, ein Schaltjahr ist. Das ist nur bedingt richtig. Bei den Jahrhundertwenden sieht es etwas anders aus. Ein volles Jahrhundert ist nur dann ein Schaltjahr, wenn es auch durch 400 teilbar ist. Deshalb ist 2000 auch ein Schaltjahr gewesen. Die Jahre 1900 oder auch 2100 sind dagegen keine Schaltjahre. Diese Bedingungen müssen deshalb für die Spalte A, C und E unserer Monatsplanung berücksichtigt werden. Tag 30 Für den Tag 30 müssen in den entsprechenden Zellen folgende Formeln eingegeben werden: A41 =WENN(K3=2;"";30) Hier wird geprüft, ob der eingegebene Monat (K3) eine 2 ist. Sollte das der Fall sein, so wird in die Zelle A41 nichts eingetragen (““). Ansonsten wird die Zahl 30 eingesetzt. C41 =WENN(A41="";"";DATUM(K$4;K$3;A41)) Hier wird geprüft, ob die Zelle A42 leer ist. Sollte das der Fall sein, so wird auch in diese Zelle nichts eingetragen. Im anderen falle wird mithilfe der Funktion DATUM aus der Jahres-, Monats- und Tageszahl das aktuelle Datum ermittelt. E41 =WENN(A41="";"";WOCHENTAG(DATUM(K$4;K$3;A41))) In dieser Zelle wird genauso verfahren, wie in der Zelle C41. Zusätzlich wird jedoch mithilfe der Funktion WOCHENTAG die Wochentagszahl ermittelt. Damit der Wochentag als volle Bezeichnung ausgegeben wird, wurde eine benutzerdefinierte Formatierung in der Form TTTT vorgenommen. Tag 31 Für den Tag 31 müssen in den entsprechenden Zellen folgende Formeln eingegeben werden: A42 =WENN(ODER(K3=2;K3=4;K3=6;K3=9;K3=11);"";31) Auch wenn im Ansatz von Monaten mit 31 Tagen ausgegangen wird, ist es günstiger zu prüfen, welche Monat 30 Tage besitzen. Das spart eine gewisse Anzahl von gestellten Abfragen, denn es gibt 7 Monate mit 31 Tagen aber nur 4 Monate mit 30 Tagen. Dazu kommt noch der Monat Februar, der ebenfalls keine 31 Tage besitzen kann. C42 =WENN(A42="";"";DATUM(K$4;K$3;A42)) E42 =WENN(A42="";"";WOCHENTAG(DATUM(K$4;K$3;A42))) In diesen beiden Zellen wird genau so verfahren wie in den entsprechenden Zellen für den Tag 30. Tag 29 Für den Tag 29 müssen in den entsprechenden Zellen folgende Formeln eingegeben werden: A40 =WENN(K3=2;WENN(REST(K4;4)=0;WENN(REST(K4;100)=0; WENN(REST(K4;400)=0;29;"");29);"");29) Zuerst wird hier geprüft, ob es sich um den Monat Februar handelt. Sollte das der Fall sein, so wird im Dann-Zweig der Wenn-Funktion die Schaltjahresregelung überprüft. Andererseits wird im Sonst-Zweig geregelt, dass die Zahl 29 ausgegeben wird. Bei der Überprüfung auf Schaltjahre wird zuerst überprüft, ob es sich um eine Jahreszahl handelt, die durch 4 - REST(K4;4)=0 - teilbar ist. Ist das nicht der Fall, so wird in die Zelle A40 nichts eingetragen. Ist die Zahl durch 4 teilbar, erfolgt eine Prüfung dahin, ob es sich um eine Jahrhundertwende handelt - REST(K4;100)=0. Ist die Jahreszahl nicht durch 100 teilbar, wird die 29 eingetragen. Ist diese Zahl jedoch durch 100 teilbar, wird weiterhin geprüft, ob diese Zahl durch 400 - REST(K4;4)=0 - teilbar ist. Sollte diese Frage ein richtiges Ergebnis liefen, wird die Zahl 29 ausgegeben. Im anderen Falle wird in die Zelle nichts eingetragen. C40 =WENN(A40="";"";DATUM(K$4;K$3;A40)) E40 =WENN(A40="";"";WOCHENTAG(DATUM(K$4;K$3;A40))) Bei den beiden letzten Einträgen gelten die gleichen Aussagen, wie sie für die C42 und E42 gemacht wurden. 4.2.3 Formatierung des Monatsplanes Auf Grund der Komplexität der Formatierungsaufgabe und der auf drei Bedingungen beschränkten Möglichkeiten bietet sich das Erstellen einer Entscheidungstabelle an. Bei der Analyse des Problems konnten vier Fälle herausgearbeitet werden. Diese Fälle können der nachstehenden Tabelle entnommen werden. Entscheidungstabelle Fall Bed. rot Linie Samstag, nicht letzter Monatstag 3 ja Sonntag, nicht letzter Monatstag 3 ja Werktag, nicht letzter Monatstag 4 Samstag, letzter Monatstag 1 ja ja Sonntag, letzter Monatstag 1 ja ja Werktag, letzter Monatstag 2 Leere Zelle 4 Schwarz ja ja ja ja Die Bedingung 4 wurde wegen der normalen Formatierung als Grundformatierung für alle betreffenden Zellen vorgenommen. Die Realisierung dieser Entscheidungstabelle für Zellen A12:E42 sind für die Bedingungen 1, 2 und 3 der folgenden Abbildung dargestellt. Für die Zellen G12:N42 kann ebenfalls eine Entscheidungstabelle aufgestellt werden. Diese ist nicht so komplex. Deshalb wurde auf ihre Abbildung verzichtet. Die Eintragungen reduzieren sich ein wenig. (Fieting, 08.03.2002, Strausberg)