Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1756to1760
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Chart-Legende analog zu Reihen färben

Chart-Legende analog zu Reihen färben
18.05.2020 15:13:27
Wolfgang
Hallo zusammen,
ich baue mir aus einer Tabelle die Reihen für ein bubblechart auf. Die Datenpunkte färbe ich je Reihe einheitlich. Funktioniert ("ActiveChart.SeriesCollection(i).Points(count).Interior.Color = aryFarbcode(i)").
Blende ich die Legende ein, sind die Farbpunkte der Legende nicht entsprechend der Farben der Reihen.
Ich habe versucht, die Legende mit einem Farbcode zu belegen:
Variante 1:
'ActiveChart.Legend.LegendEntries(i).Format.Fill.ForeColor.RGB = aryFarbcode(i)'
Variante 2:
'ActiveChart.Legend.LegendEntries(i).LegendKey.Format.Fill.ForeColor.RGB = aryFarbcode(i)'
In beiden Fällen erhalte ich nicht das gewünschte Ergebnis, Excel färbt es nach seinem eigenen Schema.
Was übersehe ich?
Danke
Wolfgang

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Das geht doch automatisch...
18.05.2020 15:31:35
Beverly
Hi Wolfgang,
keine Ahnung, wie du dein Diagramm erstellt hast, aber bei mir färbt Excel alle Datenpunkte einer Datenreihe - und damit auch den Legendeneintrag - automatisch mit derselben Farbe.

GrußformelBeverly's Excel - Inn
AW: Hatte ich auch gedacht ...
18.05.2020 17:00:02
Wolfgang
Hallo Karin,
das hier ist das entsprechende Code-Fragment:
'eine Datenreihe fuer jeden Fachbereich
ActiveChart.SeriesCollection(1).Name = aryFachbereich(1)
For i = 1 To 8
If i > 1 Then
ActiveChart.SeriesCollection.NewSeries
End If
ActiveChart.SeriesCollection(i).Name = aryFachbereich(i)
ActiveChart.SeriesCollection(i).Interior.Color = aryFarbcode(i)
'Legende einfügen und Legendenfarbe ebenfalls setzen
ActiveChart.SetElement (msoElementLegendBottom)
' Datenreihe bauen
count = 1
xVals = ""
Vals = ""
bVals = ""
Do While aryDatenreihe(i, count)
If count > 1 Then
xVals = xVals & ","
Vals = Vals & ","
bVals = bVals & ","
End If
xVals = xVals & "'" & wks.Name & "'!R" & aryDatenreihe(i, count) & "C" & xspalte
Vals = Vals & "'" & wks.Name & "'!R" & aryDatenreihe(i, count) & "C" & yspalte
bVals = bVals & "'" & wks.Name & "'!R" & aryDatenreihe(i, count) & "C" & bsizespalte
count = count + 1
Loop
'Datenreihen mit nur einem Punkt werden nicht in Klammern gesetzt
If count > 2 Then
Reihe = "=SERIES(""" & aryFachbereich(i) & """,(" & xVals & "),(" & Vals & ")," & i & ",(" & bVals & "))"
Else
Reihe = "=SERIES(""" & aryFachbereich(i) & """," & xVals & "," & Vals & "," & i & "," & bVals & ")"
End If
'Datenreihe einsetzen, wenn nicht leer
If Not xVals = "" Then
ActiveChart.SeriesCollection(i).Formula = Reihe
'Labeln
count = 1
Do While aryDatenreihe(i, count)
ActiveChart.SeriesCollection(i).Points(count).HasDataLabel = True
ActiveChart.SeriesCollection(i).Points(count).DataLabel.Text = wks.Cells(aryDatenreihe(i, count), idspalte).Value & " - " & wks.Cells(aryDatenreihe(i, count), labelspalte).Value
ActiveChart.SeriesCollection(i).Points(count).Interior.Color = aryFarbcode(i)
count = count + 1
Loop
'Farbe in Legende eintragen
ActiveChart.Legend.LegendEntries(i).LegendKey.Format.Fill.ForeColor.RGB = aryFarbcode(i)
ActiveChart.Legend.LegendEntries(i).Select
With Selection.Format.Fill
.Visible = msoTrue
.ForeColor.RGB = aryFarbcode(i)
.Transparency = 0.1
.Solid
End With
End If
Next i
Im Ergebnis stimmen die Farbpunkte in der Legende eben farblich nicht mit den Reihenpunkten überein. Wählt man im Chart den Legendenfarbpunkt aus und schaut sich das Format-Menu an, steht es für die "Legendeneintragsoption" auf automatisch, für die Textoption auf einfarbig.
Wolfgang
Anzeige
Der Code alleine nützt überhaupt nichts...
18.05.2020 17:18:33
Beverly
Hi Wolfgang,
...dazu benötigt man schon die betreffende Mappe mit den Daten und dem Diagramm.

GrußformelBeverly's Excel - Inn
AW: Fehler gefunden (Layer 8, wie meist ...)
18.05.2020 19:11:50
Wolfgang
Hallo Karin,
danke für Deine Mühe. Ich habe meinen "Fehler" gefunden. Die Diagramm-Elemente (Bubbles) hatten eine Füllfarbe und eine Linienfarbe, die voneinander abwichen. Da die Schrifttype sehr klein gewählt war, erschien die Legendenmarkierung andersfarbig, da die Linie um den Kreis sehr intensiv ausfiel. Kaum hatte ich die "Border"-Farbe angepasst, war mein Problem behoben ...
Danke für Deine Mühe! Asche auf mein Haupt.
Wolfgang
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige