![]() |
||
![]() |
Farbig markierte Zellinhalte summierenIn einer Tabelle nutze ich neben den Werten in den Zellen die Farbe des Zellhintergrundes als zusätzliche Information. Diese Farbe kann mit der Zeit durch geänderte Bewertungskriterien variieren. Ich suche deshalb nach einer Möglichkeit, in einem bestimmten Tabellenbereich alle Zellen mit gleicher Hintergrundfarbe zu summieren. Wie kann ich das realisieren? Grundsätzlich können Sie in Excel die Funktion »SUMMEWENN« verwenden, um Zellen anhand bestimmter Bedingungen zu summieren. Die Hintergrundfarbe steht für diese Funktion allerdings nicht als Bedingung zur Verfügung. Sie müssen deshalb auf ein Makro zurückgreifen. Dazu öffnen Sie »Extras | Makro | Makros«, geben einen Namen – etwa »Farbsumme« – ein und klicken auf »Erstellen«. Editieren Sie nun im VBA-Editor folgenden Programmcode: Public Function Farbsumme(basis As Range, reihe As Range)Das Listing finden Sie unter CHIP-Code Praxis02 auf der Heft-CD. Wählen Sie »Datei | Schließen und zurück zu Microsoft Excel«. Die Funktion benötigt als Argumente zwei Werte. Zuerst übergeben Sie eine Zelladresse mit dem gewünschten Farbhintergrund und dann durch ein Semikolon getrennt den Zellbereich für die Summenbildung. Mit dem ersten VBA-Befehl ermittelt das Makro den Farb-Indexwert der als Bezug übergebenen Zelle. Dieser Wert dient dann zum Vergleich der Hintergrundfarben bei allen Zellen aus dem Datenbereich. Nur die Werte der Zellen mit gleicher Hintergrundfarbe werden dann bei der Summenbildung berücksichtigt. Geben Sie im Beispiel in Zelle A10 die Formel »=Farbsumme(A3;A1:D8)« ein, um alle roten Zellen (wie A3) im Bereich A1:D8 zu summieren. Diese Funktion können Sie nun wie jede andere in Ihrer Tabelle verwenden. |
![]() |