online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon jasper111 vom 13.06.2019, 18:36 Options

farbige Zellen

Hallo alle,

in einer Spalte mit Datumseinträgen möchte ich die mit einer bestimmten Farbe hinterlegten summieren.

Wie geht das?

Gruss Jasper


Antwort schreiben

Antwort 1 von Hajo_Zi vom 13.06.2019, 18:38 Options

Hallo Jasper,

Link zur Datei

Gruß Hajo

Antwort 2 von jasper111 vom 13.06.2019, 19:03 Options

Hallo Hajo,

danke, aber wie bau ich das in meiner Tabelle ein???

Gruss Jasper

Antwort 3 von Hajo_Zi vom 13.06.2019, 19:06 Options

Hallo Jasper,

dass entsprechende Modul in Deine Datei kopieren und die entsprechende Formel in die Zelle.

Gruß Hajo

Antwort 4 von jasper111 vom 13.06.2019, 19:44 Options

Sorry Hajo,

aber es klappt nicht.
Als Modul einfügen?

Gruss Jasper

Antwort 5 von Hajo_Zi vom 13.06.2019, 19:57 Options

Hallo Jasper,

bei mir war es als Modul warum sollte es bei Dir als was anderes eingefügt werden?

Ich lehne es ab über das Internet auf fremde Rechner zu schauen. Aus diesem Grunde kann ich nicht schreiben wo dr Fehler bei Dir liegt.

Gruß Hajo

Antwort 6 von coros vom 13.06.2019, 20:08 Options

HAllo Hajo,

sorry, sei mir nicht böse, aber warum kannst Du jasper nicht erklären, wie er das Modul in seine Datei bekommt. Du beschwerst Dich immer bei anderen Usern, dass Ihre Fragestellung wenig und mangelhaft sind, gehst aber nicht mit gutem Beispiel voran. Sorry, aber das verstehe ich nicht.

@jasper, schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 7 von jasper111 vom 13.06.2019, 20:12 Options

Hallo Hajo,

auch folgendes funktioniert nicht bei mir, als Ergebnis erhalte ich immer 0.


Öffnen Sie die Arbeitsmappe, in der Sie die farbig gekennzeichneten Zellen summieren wollen.

Drücken Sie Alt+F11, um in den Visual Basic-Editor zu wechseln.

Wählen Sie im Menü Einfügen den Befehl Modul an.

Geben Sie die benutzerdefinierte Funktion in das daraufhin angezeigte Codefenster ein:

Public Function SUMMEWENNFARBE _
(Summenbereich As Range, _
Farbzelle As Range) _
As Double
Dim rZelle As Range
Dim vFarbwert
Dim dblErgebnis As Double
vFarbwert = Farbzelle.Interior.Color
For Each rZelle In Summenbereich.Cells
If IsNumeric(rZelle.Value) And _
rZelle.Interior.Color = vFarbwert Then
dblErgebnis = dblErgebnis + rZelle.Value
End If
Next rZelle
SUMMEWENNFARBE = dblErgebnis
End Function


Verlassen Sie den Visual Basic-Editor, indem Sie Datei-Schließen und zurück zu Microsoft Excel aufrufen.

Damit steht Ihnen in der aktuellen Arbeitsmappe eine neue, benutzerdefinierte Funktion namens SUMMEWENNFARBE zur Verfügung. Die Funktion erwartet zwei Parameter:


den Zellbereich, in dem Sie die farbig markierten Zellen suchen und addieren wollen

einen Zellbezug auf eine Zelle mit der gewünschten Füllfarbe

Angenommen, Sie hätten die Tabellendaten im Bereich A1:E25 eingegeben und wollten nun alle Zellen addieren, die gelb markiert sind. Eine derart markierte Zelle ist zum Beispiel Zelle E10. Dann können Sie in eine leere Zelle folgende Formel eingeben:

=SUMMEWENNFARBE(A1:E25;E10)


Gruss Jasper

Antwort 8 von Hajo_Zi vom 13.06.2019, 20:25 Options

Hallo Jasper,

Ist die Farbe vielleicht durch bedingte Formatierung erzeugt.

Gruß Hajo

Antwort 9 von nighty vom 13.06.2019, 20:35 Options

hi all :-)

noch ein beispiel :-)

mit seperaten code fuer farbindex anzeige

gruss nighty

ein zufuegen

alt+f11/projektexplorer/allgemeines modul

neue formel
=SumInteriorColor(bereich;farbindex)
=SumInteriorColor(A1:A3;3)

Function SumInteriorColor(Zellen As Range, farbe As Long) As Double
Application.Volatile
Dim Zelle As Range
For Each Zelle In Zellen
If Zelle.Interior.ColorIndex = farbe Then
SumInteriorColor = SumInteriorColor + Zelle.Value
End If
Next
End Function

farbindex ermittlung bzw anzeige

Sub makro01()
For FarbNummer = 1 To 55
Range("D" & FarbNummer).Interior.ColorIndex = FarbNummer
Range("E" & FarbNummer) = "FarbNr. " & FarbNummer
Next FarbNummer
End Sub

Antwort 10 von nighty vom 13.06.2019, 20:48 Options

hi all :-)

fuer die bedingte form :-))

funktioniert fast immer :-)

gruss nighty

ein zufuegen

alt+f11/projektexplorer/allgemeines modul

nach dem ist die function unter einfuegen/function/benutzerdefiniert/BedingungAdd verfuegbar

neue formel
=BedingungAdd(bereich;farbindex)
=BedingungAdd(A1:A3;3)

Function BedingungAdd(Zellen As Range, farbe As Integer) As Double
Dim Zelle As Range
Dim farben As Integer
Application.Volatile
For Each Zelle In Zellen
farben = GetCellColor(Zelle)
If farben = farbe Then
BedingungAdd = BedingungAdd + Zelle.Value
End If
Next
End Function


Function GetCellColor(cell As Range) As Integer
Dim i
Dim myVal
Dim myColor As Integer
Dim done As Boolean
On Error Resume Next
Names("testname").Delete
On Error GoTo 0
Application.ReferenceStyle = xlR1C1
myVal = cell.Value
myColor = cell.Interior.ColorIndex
done = False
For i = 1 To cell.FormatConditions.Count
With cell.FormatConditions.Item(i)
If .Type = 1 Then
Select Case .Operator
Case xlBetween
If (myVal >= Evaluate(.Formula1) And myVal <= Evaluate(.Formula2)) _
Or (myVal <= Evaluate(.Formula1) And myVal >= Evaluate(.Formula2)) Then
myColor = .Interior.ColorIndex
done = True
End If
Case xlEqual
If myVal = Evaluate(.Formula1) Then
myColor = .Interior.ColorIndex
done = True
End If
Case xlGreater
If myVal > Evaluate(.Formula1) Then
myColor = .Interior.ColorIndex
done = True
End If
Case xlGreaterEqual
If myVal >= Evaluate(.Formula1) Then
myColor = .Interior.ColorIndex
done = True
End If
Case xlLess
If myVal < Evaluate(.Formula1) Then
myColor = .Interior.ColorIndex
done = True
End If
Case xlLessEqual
If myVal <= Evaluate(.Formula1) Then
myColor = .Interior.ColorIndex
done = True
End If
Case xlNotBetween
If myVal < Evaluate(.Formula1) Or myVal > Evaluate(.Formula2) Then
myColor = .Interior.ColorIndex
done = True
End If
Case xlNotEqual
If myVal <> Evaluate(.Formula1) Then
myColor = .Interior.ColorIndex
done = True
End If
End Select
ElseIf .Type = 2 Then
Names.Add Name:="testname", RefersToR1C1Local:=.Formula1
If Evaluate("testname") Then
myColor = .Interior.ColorIndex
done = True
End If
Names("testname").Delete
Else
MsgBox "Unbekannter Typ: " & .Type, , "PANIC: In Function GetCellColor"
Exit Function
End If
End With
If done Then Exit For
Next
Application.ReferenceStyle = xlA1
GetCellColor = myColor
End Function

Antwort 11 von Jasper111 vom 13.06.2019, 21:18 Options

Hallo alle,

coros, bei dir hatte ich schon vorher geschaut, 3 und 20

Hajo, die Spalte ist mit Datumsangaben gefüllt, Farbgebung manuell

Nighty, bei dir erscheint ein Syntaxfehler, deinen 2. Beitrag versuche ich morgen

bedanke mich bei euch, vermutlich liegt der Fehler in meiner ungenauen Fragestellung: ich möchte die Anzahl der farbig hinterlegten Zellen wissen, nicht die Summe der Inhalte

Gruss Jasper

Antwort 12 von Hajo_Zi vom 14.06.2019, 06:32 Options

Hallo Jasper,

das wäre bei mir das Modul Anzahl_einer_Farbe

Gruß Hajo

Antwort 13 von jasper111 vom 14.06.2019, 11:49 Options

Danke an alle, nun hat es geklappt.

Gruss Jasper

Ähnliche Themen

Zellen formatieren ( Zellen verbinden )
manu661  16.02.2007 - 200 Hits - 3 Antworten

Zellen verbinden in Excel - nicht möglich
canis  06.07.2007 - 291 Hits - 2 Antworten

Zellen mit textinhalt zusammenfassen???
Anlud  30.08.2007 - 103 Hits - 7 Antworten

in excel zellen verbinden, ohne inhalte zu löschen
mafug  21.09.2007 - 273 Hits - 1 Antwort

Zellen nach gleichem Text überprüfen
Prain  04.10.2007 - 127 Hits - 9 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026