Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel vba: Farbsumme aus gefilteter Liste
#1
Hallo zusammen,

ich hätte mal eine Frage zum Farbsummen-Thema.
Beispiele gibt es ja genügend wo Werte einer Zelle (in Spalte "A") mit bestimmten Zellfarben (z.B. gelb "6") aufsummiert werden können - so weit so gut.
Einen Filter auf eine Nachbarspalte gesetzt, zeigt mir nun alle Werte in der "Farbspalte" ("A") die dem Filterkriterium der Spalte "B" entsprechen.
Es gibt jetzt aber noch weitere "gelbe" Zellen in Spalte "A" die durch den Filter ausgeblendet worden sind.

Das Problem ist, dass die Farbsumme aber auch diese nicht sichtbaren Werte aufaddiert - und das sollte nicht sein - ich benötige nur die Summe der sichtbaren Werte der farbigen Zellen.

Hat dazu jemand eine Idee wie man das umsetzen könnte?

Hier mal ein kleines Code-Beispiel:
Code:
Function FarbsummeTest(Bereich As Range)
  Application.Volatile
  FarbsummeTest = 0
  For Each Zelle In Bereich
     If Zelle.Font.ColorIndex = 6 Then
        FarbsummeTest = FarbsummeTest + Zelle.Value
     End If
  Next
End Function
Mit freundlichen Grüßen / Best regards
                          //
----------o00o---°(_)°---o00o----------------------

Erich
Antworten Top
#2
Hi

Versuch es mal mit der Zeile.
Code:
For Each Zelle In Bereich.SpecialCells(xlCellTypeVisible)

Gruß Elex
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • sharky51
Antworten Top
#3
Hallo Elex,

danke für die Rückmeldung, aber das bringt leider auch nicht das gewünschte Ergebnis.
Es werden immer noch alle Zellen addiert.
Mit freundlichen Grüßen / Best regards
                          //
----------o00o---°(_)°---o00o----------------------

Erich
Antworten Top
#4
Hi

dann schlage ich eine Beispieldatei vor.

Gruß Elex
Antworten Top
#5
Hallo,

@sharky51: eine Summe basierend auf einer Zellfarbe zu ermitteln, ist grundsätzlich keine so gute Idee. Die Farbe
bräuchte nur leicht abweichen und schon funktioniert's nicht mehr. Gelb ist nicht gelb - je nachdem wo es herkommt.

Dein Code summiert die Farbe der Schrift, nicht des Hintergrunds (wie es soll, so wie ich das verstanden habe).
Versuche mal den Code hier...

Code:
Function FarbsummeTest(Bereich As Range)
  Application.Volatile
  FarbsummeTest = 0
  For Each Zelle In Bereich
     If Zelle.Interior.ColorIndex = 6 And Not _
        Zelle.EntireRow.Hidden Then
        FarbsummeTest = FarbsummeTest + Zelle.Value
     End If
  Next
End Function

Dennoch, wie gesagt, vermeide das Summieren über eine Farbe.

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awards
https://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
[-] Folgende(r) 1 Nutzer sagt Danke an maninweb für diesen Beitrag:
  • sharky51
Antworten Top
#6
Hallo und guten Morgen,

erst mal vielen Dank für die Rückmeldung - funktioniert prima das Teilchen.

War ein Versehen mit der Schriftfarbe - es handelt sich natürlich um die Zellenfarbe.
Dass es mit dem Farbcode ev. problematisch sein kann ist mir bewusst - aber gibt es eine andere/bessere Lösung um Inhalte von verschiedenfarbigen Zellen zu addieren?

Was mir gerade so einfällt wäre abzufragen welches Filterkriterium in der gefilterten Spalte in einer Zelle steht - um dann alle zugehörigen Werte zu summieren.
Klingt umständlich!
Mit freundlichen Grüßen / Best regards
                          //
----------o00o---°(_)°---o00o----------------------

Erich
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste