Zellen addieren in Abhängigkeit der Schriftfarbe



Excel-Version: ??
nach unten

Betrifft: Zellen addieren in Abhängigkeit der Schriftfarbe
von: Maren
Geschrieben am: 06.05.2002 - 21:45:13

Hallo an alle!

Ich bin auf der Suche nach einer Funktion (wahrscheinlich nur in VBA zu realisieren), mit der ich Zellen aufgrund ihrer Schriftfarbe addieren lassen kann.

Momentan sieht mein Skript so aus:

Function Farbe(rngBereich As Object, intColor As Integer)
Dim rngAct As Range
For Each rngAct In rngBereich
If rngAct.Font.ColorIndex = intColor Then
...
End If
Next rngAct
End Function

Keine Ahnung ob's funktioniert. An der Stelle der "..." fehlt schlichtweg die Funktion zum AYddieren der Zellen. Kann ich im Skript irgendwie die Funktion summe() aufrufen???

Herzlichen Dank schonmal im Voraus!
Maren

nach oben   nach unten

Re: Zellen addieren in Abhängigkeit der Schriftfarbe
von: Michael Scheffler
Geschrieben am: 06.05.2002 - 21:51:27

Hallo Maren,

-> Application.WorksheetFunction

In der Hilfe fimdest Du alle in VBA verfügbaren Tabellenfunktionen.

Gruß

Micha


nach oben   nach unten

Re: Zellen addieren in Abhängigkeit der Schriftfarbe
von: Maren
Geschrieben am: 06.05.2002 - 21:59:42

auch wenn ich mich jetzt als totaler idiot oute, aber mit den funktionen kann ich nicht wirklich was anfangen...

maren


nach oben   nach unten

Re: Zellen addieren in Abhängigkeit der Schriftfarbe
von: WernerB.
Geschrieben am: 06.05.2002 - 22:20:39

Hallo Maren,

in Hans W. Herber's Archiv habe ich eine Function gefunden, die ich passend für Dich modifiziert habe.
Diese Function solltest Du in einem Standardmodul hinterlegen:

In der Zelle, in der die Summe der Werte mit einer bestimmten Schriftfarbe erscheinen soll, folgende Formel eingeben:
= SumFarbe(A1:A10;3)

"A1:A10" ist der Bereich, in dem die Werte mit einer bestimmten Schriftfarbe summiert werden sollen; die "3" steht hier für die Farbe Rot.

Nun ist es aber leider so, dass Excel nicht auf Format-Veränderungen reagiert, wenn man nicht ein bisschen nachhilft. Wenn Du also die Anzahl der Werte mit roter Schriftfarbe in dem Bereich veränderst, zeigt Excel in der Ergebniszelle immer noch den alten Wert an.

Alternativ zum Gebrauch der F9-Taste kannst Du deshalb auch im Tabellenblatt-Modul den folgenden Code hinterlegen (als Ergebniszelle habe ich "A11" angenommen):

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
ActiveSheet.Range("A11").Calculate
End Sub

Allerdings machen mehrere solcher Konstrukte Excel erheblich langsam, weil es nach jedem Mausklick neu rechnet. Diesen Nachteil musst Du leider in Kauf nehmen.

Noch etwas wichtiges: Die Schriftfarben dürfen nicht durch bedingte Formatierung erzeugt werden!

Viel Erfolg wünscht
WernerB.

nach oben   nach unten

Re: Zellen addieren in Abhängigkeit der Schriftfarbe
von: Maren
Geschrieben am: 06.05.2002 - 22:27:11

vielen lieben dank! es läuft. die sache mit de aktualisierung stört mich nicht weiter - besser f9 als excel zum schleichen zu veranlassen. welche bedeutung hat die # hinter sumfarbe??

nach oben   nach unten

Re: Zellen addieren in Abhängigkeit der Schriftfarbe
von: WernerB.
Geschrieben am: 06.05.2002 - 22:47:54

Hallo Maren,

es freut mich, dass Du mit der Function zurechtkommst; aber vergiss nicht, bei Änderungen immer F9 zu drücken!

Das Nummernzeichen (#) ist in diesem Fall die Kurzform für die Variablen-Dimensionierung "As Double" (Fließkommazahlen mit einer Genauigkeit von 16 Stellen hinter dem Komma).

MfG
WernerB.


nach oben   nach unten

Re: Zellen addieren in Abhängigkeit der Schriftfarbe
von: Michael Scheffler
Geschrieben am: 07.05.2002 - 08:32:55

Hallo Maren,

warum nicht? Das sind die Tabellenfuunktionen die zur Verfügung stehen. Irgendwo - ich glaube bei Herber - gibt es eine Liste der deutsch-englischen Übersetzung.

Oder habe ich Deine Frage falsch verstanden? Ich dachte, Du willst Dein Farbproblem über Tabellenfunktionen lösen und wolltest wissen, wie Du unter VBA an sie rankommst?

Viele Grüße

Micha


 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Zellen addieren in Abhängigkeit der Schriftfarbe"