Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Diagramm-Farbverlauf

Forumthread: Diagramm-Farbverlauf

Diagramm-Farbverlauf
06.07.2013 10:39:33
Nachtaktivist
Hallo alle zusammen,
mit welchem Befehl kann ich den Winkel der graduellen Füllung eines Diagrammhintergrunds ändern?
Leider funktioniert folgendes nicht, da dies (GradientAngle) Excel2007 noch nicht kennt:
'soll Winkel des Farbverlaufs ändern (aber geht nicht in EX07, erst ab EX10)
sheets("Tabelle 1").ChartObjects("Diagramm 1").Chart.PlotArea.Format.Fill.Gradientangle = 270
Vielerlei rumsuchen und probieren brachte keinen Erfolg.
(Weiteres zum Problem: ich setze abhängig von dem Maximalwert der y-Achse den Diagrammhintergrund farbig graduell. Falls diese Formatierung nicht vorliegt, wird sie vom Code erstellt. Obwohl richtige Werte für die Gradient-Stopps ist der Farbverlauf genau 180° gedreht. Das was unten sein soll ist oben usw.. Der Winkel dieser graduellen Füllung ist 90° (ich glaube Richtung ist "Linear unten". Ich brauche das Gegenteil. Also möchte ich den Winkel auf 270° setzen bzw. die Richtung umkehren ("Linear oben"). Die Berechnung für die Farbstopps umzukehren wäre der falsche weg, da 0% ja unten ist und die 100% der y-Achse oben.)
Zusätzlich noch eine Frage: Ist der folgende Befehl richtig?
(natürlich befindet sich dieser Code-Teil vor dem anderen Code-Teil in meinem Modul, so dass auf jeden Fall graduelle Füllung vorliegt)
'setzt die Füllung vom Diagramm-Hintergrund auf graduell
sheets("Tabelle 1").ChartObjects("Diagramm 1").Chart.PlotArea.Format.Fill.OneColorGradient _
Style:=msoGradientHorizontal, Variant:=1, Degree:=1
Er klappt zwar, aber Änderungen an "Variant" und "Degree" haben keine Auswirkung ("Degree" ist ja hier der Helligkeitsgrad der Farbe laut Hilfe). Habe ich da was falsch verstanden oder ist dieser Befehl nur teilweise wirksam auf das Diagramm und man nutzt eigentlich was anderes?
Für eure Hilfen und Mühen bin ich euch sehr dankbar.
Gruß
Chris

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramm-Farbverlauf
06.07.2013 13:08:49
fcs
Hallo Chris,
ich hab deine Code-Schnipsel mal an einem Diagramm unter Excel 2010 getestet.
sheets("Tabelle 1").ChartObjects("Diagramm 1").Chart.PlotArea.Format.Fill.OneColorGradient _
Style:=msoGradientHorizontal, Variant:=1, Degree:=1
funktioniert färbt die Plot-Fläche in einer Farbe mit einem linearen Verlauf.
Bei Änderung von Variant (Werte 1, 2, 3 der 4) ändert sich die Position der Farbe
1 = oben
2 = unten
3 = außen
4 = mitte
Parameter Degree wirkt sich auf die Helligkeit der Basis-Farbe am Ende des Verlaufs aus.
0 = Endfarbe ist nahe an Schwarz
0.5 = Endfarbe = Startfarbe (Fläche hat einheitliche Farbe)
1 = Endfarbe ist nahe an Weiß
Die Anweisung
'soll Winkel des Farbverlaufs ändern (aber geht nicht in EX07, erst ab EX10)
Sheets("Tabelle 1").ChartObjects("Diagramm 1").Chart.PlotArea.Format.Fill.GradientAngle = 0

überschreibt teilweise die Kombination von Style und Variant der 1. Anweisung.
0 = vertikal von links nach rechts
90 = horizontal von oben nach unten
180 = vertikal von rechts nach links
270 = horizontal von unten nach oben
Wenn du über die Farbintensität des Hintergrunds den Maxwert der Y-Achse anzeigen willst, dann musst du die Basisfarbe entsprechend gesättigter oder blasser darstellen. Mit dem Parameter "Degree" kommst du hier wahrscheinlich nicht weiter.
Gruß
Franz

Anzeige
AW: Diagramm-Farbverlauf
06.07.2013 14:43:10
Nachtaktivist
Hi Franz,
und vielen Dank. Variant:=4 bringt den gewünschten Erfolg. Mit diesem Argument wird der Winkel auf 270° definiert und bei Variant:=1 auf 90° (Excel2007).
Leider ist GradientAngle in EX07 nicht verfügbar. So wie ich recherchiert habe leider erst ab EX10. Ich benutze EX07 und musste erst einen anderen Weg finden (ich hatte nun doch die Farbstopp-Positionen einfach umgekehrt also "1-Farbstopp-Position", das klappte zwar aber ist etwas unsauber weil ich auch gerne zur Sicherheit den Winkel beim aktualisieren des Diagramms definieren möchte). Das geht nun quasi mit Variant:=4. Gibt es in EX07 keinen separaten Befehl dafür, den Winkel zu ändern? Der Makro-Rekorder hinterlässt leider keinen Code bei solchen Einstellungen im Diagramm.
Gruß
Chris
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige