Excel-Tutorial: WENN-Abfrage basierend auf Zellfarbe

Melden

Dieses Tutorial zeigt dir, wie du eine „WENN-Abfrage“ basierend auf der Hintergrundfarbe einer Zelle erstellst.

Wichtiger Hinweis vorab: Excel verfügt standardmäßig über keine eingebaute Funktion, die Zellfarben direkt in einer Formel (wie =WENN) erkennt. Wir nutzen daher zwei gängige Lösungswege: einen über ein kleines VBA-Skript (am zuverlässigsten) und einen über einen alten Excel-Trick (Namens-Manager).


Methode 1: Die Profilösung mit VBA (Benutzerdefinierte Funktion)

Dies ist der sicherste Weg. Wir erstellen eine eigene Funktion, die den Farbcode einer Zelle ausliest.

Schritt 1: Den VBA-Editor öffnen

  1. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Gehe im Menü auf Einfügen > Modul.

Schritt 2: Den Code kopieren

Kopiere den folgenden Code in das leere Fenster:

Function ZellFarbe(Zelle As Range)
    Application.Volatile
    ZellFarbe = Zelle.Interior.ColorIndex
End Function

Erklärung: ColorIndex gibt eine Zahl für die Farbe zurück (z.B. 3 für Rot, 6 für Gelb).

Schritt 3: Die Funktion in Excel nutzen

Gehe zurück in dein Excel-Arbeitsblatt. Du kannst nun die neue Funktion wie eine normale Formel verwenden.

Beispiel: Du möchtest prüfen, ob die Zelle A1 rot ist (Rot hat meist den Index 3). Schreibe in eine andere Zelle: =WENN(ZellFarbe(A1)=3; "Gefahr"; "OK")

Tipp: Um herauszufinden, welche Zahl deine Farbe hat, schreibe einfach =ZellFarbe(A1) in eine Zelle und schaue dir das Ergebnis an.


Methode 2: Die Lösung ohne Programmierung (Namens-Manager)

Wenn du kein VBA-Modul anlegen möchtest, gibt es einen versteckten Trick über die alten Excel-4.0-Makros.

Schritt 1: Namen definieren

  1. Klicke auf die Zelle B1 (wichtig: die Zelle rechts neben der farbigen Zelle A1).
  2. Gehe zum Reiter Formeln > Namen definieren.
  3. Gib im Feld Name ein: Hintergrundfarbe
  4. Gib bei Bezieht sich auf folgendes ein: =ZELLE.ZUORDNEN(63; Tabelle1!A1) (Hinweis: Ersetze „Tabelle1!A1“ durch die Zelle links von deiner aktuellen Auswahl).
  5. Bestätige mit OK.

Schritt 2: Die Formel anwenden

  1. Schreibe nun in Zelle B1: =Hintergrundfarbe.
  2. Excel gibt dir nun eine Zahl aus (0 für keine Farbe, oder eine spezifische Zahl).
  3. Jetzt kannst du die WENN-Funktion darauf aufbauen: =WENN(Hintergrundfarbe=3; "Stopp"; "Weiter")

Wichtige Tipps & Fallstricke

1. Speichern im richtigen Format

Da beide Methoden auf Makro-Technologie basieren, musst du deine Excel-Datei als Excel Arbeitsmappe mit Makros (.xlsm) speichern. Als normale .xlsx-Datei gehen die Funktionen verloren.

2. Die Farbe löst keine automatische Berechnung aus

Excel berechnet Formeln normalerweise nur neu, wenn sich Daten ändern. Wenn du nur die Farbe einer Zelle änderst (mit dem Farbeimer), reagiert die Formel nicht sofort.

  • Lösung: Drücke F9 (Neu berechnen) oder ändere kurz einen Wert in irgendeiner Zelle.

3. Warum man Farben für Logik vermeiden sollte

In der professionellen Datenverarbeitung gilt die Regel: Farbe folgt der Logik, nicht umgekehrt. Es ist besser, die Bedingte Formatierung zu nutzen. Anstatt eine Zelle manuell rot zu färben und dann zu prüfen "Ist sie rot?", solltest du einen Wert eingeben (z.B. "Fehler") und die Zelle per Bedingter Formatierung rot färben lassen. So kannst du ganz einfach mit =WENN(A1="Fehler";...;...) arbeiten.


Zusammenfassung der Farbcodes (ColorIndex)

Hier sind einige gängige Codes für Methode 1 & 2:

  • 3: Rot
  • 4: Hellgrün
  • 6: Gelb
  • 5: Blau
  • -4142: Keine Füllung
0