Nein, Sie können keine Zellhintergrundfarbe in einer "countif` -Anweisung (oder einer anderen Standard -Excel -Funktion) direkt verwenden. `Countif` funktioniert mit Zellen *Werten *, nicht formatierende Attribute wie Hintergrundfarbe.
Um Zellen basierend auf ihrer Hintergrundfarbe zu zählen, müssen Sie VBA (Visual Basic für Anwendungen) verwenden. Hier ist eine VBA -Funktion, die dies tut:
`` `vba
Funktion countbycolor (range_data als Bereich, Kriterien_Color als Reichweite) so lang
Dunkelne Zelle als Reichweite
Dim Color_code so lang
color_code =criteria_color.interior.colorIndex
Für jede Zelle in Bereich_Data
Wenn cell.interior.colorIndex =color_code dann
Countbycolor =countbycolor + 1
Ende wenn
Nächste Zelle
Endfunktion
`` `
So verwenden Sie die VBA -Funktion:
1. VBA -Editor öffnen: Drücken Sie Alt + F11.
2. Ein Modul einfügen: Gehen Sie zum Einfügen> Modul.
3. Fügen Sie den Code ein: Fügen Sie den obigen Code in das Modul ein.
4. Schließen Sie den VBA -Editor: Gehen Sie zurück zu Ihrem Excel -Blatt.
Jetzt können Sie die Funktion in Ihrem Arbeitsblatt wie folgt verwenden:
`=Countbycolor (a1:a10, b1)`
Wo:
* `A1:a10` ist der Bereich der Zellen, den Sie überprüfen möchten.
* `B1` ist eine Zelle, die eine Probe der gesuchten Hintergrundfarbe enthält. (Die Funktion verwendet den Farbindex dieser Zelle.) Füllen Sie einfach eine Zelle mit der gewünschten Hintergrundfarbe.
Wichtige Überlegungen:
* ColorIndex: Diese Funktion verwendet die Eigenschaft `colorIndex`. Dies ist eine Ganzzahl, die die Farbe darstellt. Wenn Sie benutzerdefinierte Farben verwenden, die mit RGB -Werten definiert sind, funktioniert dies möglicherweise nicht zuverlässig. Erwägen Sie, die Eigenschaft "Innenarchitekte" zu verwenden, die eine lange Ganzzahl verwendet, die die RGB -Farbe für eine größere Genauigkeit darstellt, wenn Sie benutzerdefinierte Farben verwenden. Der Vergleich von Farben basierend auf RGB -Werten kann jedoch aufgrund geringfügiger Abweichungen in der Farbdarstellung ungenau sein.
* Bedingte Formatierung: Wenn die Hintergrundfarbe durch bedingte Formatierung festgelegt wird, funktioniert diese VBA -Funktion möglicherweise nicht zuverlässig, da die bedingte Formatierung möglicherweise noch nicht angewendet wurde, wenn der VBA -Code ausgeführt wird. In diesem Fall kann es erforderlich sein, einen anderen Ansatz zu verwenden, der die Formatierung aus der Quellregel erhält.
* Fehlerbehandlung: Dem obigen Code fehlt die Fehlerbehandlung. Eine robustere Version würde Schecks enthalten, um sicherzustellen, dass die Eingaben gültig sind.
Zusammenfassend kann VBA zwar nicht mit Standard -Excel -Funktionen möglich sind, aber eine Lösung zum Zählen von Zellen basierend auf ihrer Hintergrundfarbe. Denken Sie daran, Ihre Arbeitsmappe als Makro-fähige Arbeitsmappe (.xlsm) zu speichern.