| home |  
  

   © 2005 by Friedel Schmidt •  E-Mail  •                      Top  

   | impressum | feedback | home |  


Inhaltsverzeichnis

Suchen

Links
  

Bedingte Formatierung mit Bezug auf andere Tabellen
Versionen: Alle

Teil 2

Die in Teil 1 beschriebene "bedingte Formatierung" kann mit ein wenig Aufwand noch verfeinert werden.
Angenommen man will Monatswerte in verschiedenen Tabellen vergleichen und der Aufbau der einzelnen Monatstabellen ist identisch, kann man wie folgt vorgehen:

- Einfügen-Name(n)-Festlegen beziehungsweise Definieren aufrufen (die Befehlsnamen sind in den einzelnen Excel-Versionen unterschiedlich)
- im Feld Namen in der Arbeitsmappe die Bezeichnung "AktuellerWert" eingeben
- in das Feld Bezieht sich auf keine Zelladresse sondern folgende Formel eintragen:
"=INDIREKT("ZS";FALSCH)"
- mit OK bestätigen.

Diese Formel liefert den Wert der jeweils aktuellen Zelle, was bei Eingabe in einer Tabelle einen Zirkelbezug verursachen würde - hier läuft es aber ohne Fehler ab.

Nun auf die gleiche Art und Weise einen weiteren Namen definieren und diesmal die Bezeichnung "VorherigerWert" verwenden. In das Feld Bezieht sich auf folgende Formel eintragen:

"=INDIREKT(../index(ARBEITSMAPPE.ZUORDNEN(1);DATEI.ZUORDNEN(87)-1)&"!"&ADRESSE(ZEILE();SPALTE()))"

Diese Formel nutzt zwei Excel4-Makrofunktionen:

ARBEITSMAPPE.ZUORDNEN(1) gibt eine Matrix mit den Namen aller Tabellenblätter zurück

DATEI.ZUORDNEN(87) liefert den ../index (die Position) des aktuellen Blatts

Wenn man von diesem Wert die Zahl 1 abzieht, erhält man die Position des vorherigen Blatts. Den Namen dieses Blatts wird per ../index-Funktion, die in der Matrix aus der ersten Excel4-Makrofunktion nach dem passenden Eintrag sucht, ermittelt.

Der so gefundene Blattnamen wird mit der Adresse der aktuellen Zelle (ZEILE und SPALTE ohne Argumente) verknüpft, womit man die entsprechende Adresse aus dem vorherigen Tabellenblatt erhält. Den Inhalt lässt man sich per INDIREKT-Funktion ausgeben.

Nun den Bereich, auf den die bedingte Formatierung angewendet werden soll, markieren und Format-Bedingte Formatierung aufrufen.
- im Kriterienbereich im ersten Dropdown-Feld die Option Formel ist auswählen.
- im Eingabefeld folgende Vergleichsformel eintragen:

"=AktuellerWert>VorherigerWert"

- mit OK bestätigen.

An den verwendeten Namen erkennen man welchen Vergleich die Funktion anstellt. Natürlich kann auch der Vergleichsoperator "<" eingesetzt werden, um zu prüfen ob der aktuelle Wert kleiner ist als der vorherige Wert. Oder man definiert zwei Kriterien, denen unterschiedliche Formatierungen zugewiesen werden...

Wenn die Tabellen schon Werte enthalten, sieht man sofort das Ergebnis der durchgeführten Schritte.

Leider hat das Verfahren einen kleinen Schönheitsfehler, der normalerweise aber leicht zu beheben ist: Der Dateiname der Arbeitsmappe darf keine Leerzeichen enthalten; ansonsten liefern die Excel4-Makrofunktionen Fehlerwerte, sodass die bedingte Formatierung nicht zum Einsatz kommt. Lange Dateinamen bereiten keine Probleme.

Teil 1