Realisiert wurde das in 2 Varianten
durch eine VBA- und Funktions-Lösung.
Variante 1: Es wurde ein
Funktionscode erstellt, der die Zellen
mit der entsprechenden Farbe addiert.
Der Code ist in ein
StandardModul
einzufügen und sollte über eine
Befehlsschaltfläche
aufgerufen werden.
Function Farbsumme_Schriftfarbe(Bereich As Range, Farbe As Integer)
'Schriftfarbe
Dim Zelle As Object
Application.Volatile
For Each Zelle In Bereich
If Zelle.Font.ColorIndex = Farbe Then
Farbsumme_Schriftfarbe = Farbsumme_Schriftfarbe + Zelle
End If
Next
End Function
Function Farbsumme_Hintergrund(Bereich As Range, Farbe As Integer)
'Hintergrund
Dim Zelle As Object
Application.Volatile
For Each Zelle In Bereich
If Zelle.Interior.ColorIndex = Farbe Then
Farbsumme_Hintergrund = Farbsumme_Hintergrund + Zelle
End If
Next
End Function
|
In der Zelle, in der das Ergebnis
erscheinen soll, muss dann die
Funktionsformel eingetragen werden.
=Farbsumme_Schriftfarbe(A1:A100;3)
=Farbsumme_Hintergrund(B1:B100;44) |
Variante 2: Es wurde ein VBA-Code
erstellt, der die Zellen mit der
entsprechenden Farbe addiert. Die
Ergebnisse werden in Zelle E2
(Schriftfarbe) bzw. in Zelle E4
(Hintergrundfarbe) angezeigt. Hierbei
handelt es sich um ein
Worksheet_SelectionChange-Ereignis, dass
in das
VBA-Projekt der Tabelle
werden
muss,
in dem der Code wirken soll.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Zähler_Hintergrund As Integer, Zähler_Schrift As Integer, _
Zelle_Hintergrund As Range, Zelle_Schrift As Range
'Schriftfarbe
For Each Zelle_Schrift In Range("A1:A50")
If Zelle_Schrift.Font.ColorIndex = 3 Then
Zähler_Schrift = Zähler_Schrift + 1
End If
Next
Range("E2").Value = Zähler_Schrift
'Hintergrundfarbe
For Each Zelle_Hintergrund In Range("B1:B50")
If Zelle_Hintergrund.Interior.ColorIndex = 44 Then
Zähler_Hintergrund = Zähler_Hintergrund + 1
End If
Next
Range("E4").Value = Zähler_Hintergrund
End Sub
|
Dieses Beispiel wurde unter den in der
Tabelle aufgeführten Versionen getestet.
|
A |
B |
C |
D |
E |
1 |
|
|
|
|
2 |
|
Excel - Version |
Getestet |
|
3 |
|
|
|
4 |
|
Excel 2007 |
12.0 |
a |
|
5 |
|
Excel 2003 |
11.0 |
a |
|
4 |
|
Excel 2002 |
10.0 |
a |
|
5 |
|
Excel 2000 |
9.0 |
a |
|
6 |
|
Excel 97 |
8.0 |
|
|
7 |
|
|
|
|
|
8 |
|
Anzahl der Downloads: |
|
|
9 |
|
|
|
|
|
10 |
|
Dieses Beispiel wurde bereits
x
aufgerufen. |
|
11 |
|
|
12 |
|
|
|
|
|
|