Die farbliche Hinterlegung (die durchaus einen tieferen Sinn hat) ist völlig unregelmäßig *seufz*
Die Euro-Werte sind alle unterschiedlich und ich muss nun die Summe aller grünen Werte und die Summe aller blauen Werte aus jeder Spalte ziehen.
Da die Tabelle so etwa 800 Zeilen hat und bis zur Spalte OH (glaube ich) reicht - also recht umfangreich ist, möchte ich ungern jede einzelne Zelle mit einer bestimmten Farbe anklicken um sie zu addieren.
Weiß jemand von euch Rat? Ich bin fast am verzweifeln
mit folgenden benutzerdefinierten Funktionen kannst du die gewünschten Summen berechnen:
Function Farbe(Zelle)
'Farbindex der Hintergrundfarbe der Zelle ermitteln
Farbe = Zelle.Interior.ColorIndex
End Function
Function SummeFarbe(Musterzelle, Datenbereich As Range)
' Summiert alle Zellen im Datenbereich, die die Farbe der Musterzelle haben
SummeFarbe = 0
For Each Zelle In Datenbereich
If Farbe(Musterzelle) = Farbe(Zelle) Then
SummeFarbe = SummeFarbe + Zelle.Value
End If
Next
End Function
Den Code der beiden Formeln im VBA-Editor in ein Modul der Tabelle kopieren, ggf. muß du erst ein Modul anlegen. Anschließend kannst du die Formel SummeFarbe wie andere EXCEL-Formeln benutzen.
Gruß
Franz
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
ich habe ein Problem mit einer ziemlich umfangreichen
Excel-Tabelle.
Meine Daten sind mit zwei verschiedenen Hintergrundfarben
gespeichert. Die Zellen enthalten ausschließlich Euro-Werte.
Die Tabelle sieht etwa so aus: …
So was kommt alle Jubeljahre wieder. Schau mal im Archiv, da solltest Du ähnliche Probleme finden. Du wirst mit ziemlicher Sicherheit jedoch nicht um VBA rumkommen. Die einfachste VBA-Variante ist wahrscheinlich:
Du erstellst ein neues Modul und schreibst dort folgende Funktion hinein:
Public Function COLORINDEX(prngRange As Range) As Long
COLORINDEX = prngRange.Interior.COLORINDEX
End Function
Dann kannst Du z. B. an den rechten Rand Deiner Spalten, ans Ende der Zeilen oder in ein neues Blatt jeweils die Formel „=COLORINDEX(A1)“ schreiben und den gleich großen Bereich mit der Formel ausfüllen. Ich gehe mal davon aus, dass Deine Daten in Tabelle1 stehen; die Formeln schreiben wir in Tabelle2; dann ist die Formel in Tabelle2!A1 „=COLORINDEX(Tabelle1!A1)“, in Tabelle2!AB137 „=COLORINDEX(Tabelle1!AB137)“ etc.
Dann kannst Du zur Summierung Deiner Spalten folgende Formel verwenden: „=SUMMEWENN(Tabelle2!A1:A30;8;Tabelle1!A1:A30)“ (wobei A1-A30 die verwendeten Zeilen sind, bei Dir also bis 800 plus x, die mittlere 8 der von mir verwendete ColorIndex, ein komisches hellblau-türkis-grün; schaue dazu in den Werten der Tabelle2, welche Farben Du verwendest). Diese Summenformel kannst Du natürlich in jede Spalte schreiben.