Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Mit VBA Farbe der Datenreihe in XY-Diagramm ändern

Mit VBA Farbe der Datenreihe in XY-Diagramm ändern
Dirk
Hi,
ich suche nach einer Möglichkeit in eingebetteten Diagrammen via Makro die Farbe der Linien der Datenreihen vorzugeben. Die Datenreihen werden einem bestehendem Diagramm hinzugefügt (s.u.). Mir ist es bisher nicht gelungen mit Interior.ColorIndex eine "Wunschfarbe" vorzugeben. Hat einer einen Rat?
For Each XYChart In ActiveSheet.ChartObjects
XYChart.Chart.SeriesCollection.Add _
Source:=Sheets(XYName).Range("A1:A100")
Next XYChart
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Mit VBA Farbe der Datenreihe in XY-Diagramm än
Ahmed
hi,
versuch mal mit:
XYChart.Chart.SeriesCollection(1).Interior.Color = RGB(86, 52, 111)
oder
XYChart.Chart.SeriesCollection(1).Interior.Colorindex = 8
gruß
ahmed
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Mit VBA Farbe der Datenreihe in XY-Diagramm ändern


Schritt-für-Schritt-Anleitung

  1. Öffne dein Excel-Dokument und gehe zu dem Arbeitsblatt mit dem Diagramm.

  2. Aktiviere den VBA-Editor durch Drücken von ALT + F11.

  3. Füge ein neues Modul hinzu: Rechtsklick auf "VBAProject (dein Arbeitsblattname)" > Einfügen > Modul.

  4. Kopiere folgenden Code in das Modul:

    Sub FarbeDatenreiheÄndern()
       Dim XYChart As ChartObject
       Dim XYName As String
    
       XYName = "NameDeinDatenblatt" ' Ersetze mit deinem Datenblattnamen
    
       For Each XYChart In ActiveSheet.ChartObjects
           XYChart.Chart.SeriesCollection.Add _
               Source:=Sheets(XYName).Range("A1:A100")
           XYChart.Chart.SeriesCollection(1).Interior.Color = RGB(86, 52, 111) ' Wunschfarbe
           ' Alternativ: XYChart.Chart.SeriesCollection(1).Interior.ColorIndex = 8
       Next XYChart
    End Sub
  5. Führe das Makro aus: Drücke F5 oder gehe auf "Run" > "Run Sub/UserForm".

  6. Überprüfe dein Diagramm: Die Linienfarbe der Datenreihe sollte nun geändert sein.


Häufige Fehler und Lösungen

  • Fehler: „Objekt nicht gefunden“

    • Lösung: Stelle sicher, dass der Name des Datenblatts korrekt ist und die angegebenen Zellbereiche existieren.
  • Fehler: „Farbe nicht angewendet“

    • Lösung: Überprüfe, ob du die richtige Serie (z. B. SeriesCollection(1)) ausgewählt hast. Möglicherweise musst du die Indexnummer anpassen, wenn du mehrere Serien hast.

Alternative Methoden

Eine Alternative zur Verwendung von VBA ist das manuelle Ändern der Farben in Excel:

  1. Klicke mit der rechten Maustaste auf die Linie im Diagramm.
  2. Wähle „Datenreihe formatieren“.
  3. Gehe zu „Linienfarbe“ und wähle die gewünschte Farbe aus.

Für spezifische Diagrammtypen wie Kreisdiagramme oder Säulendiagramme kannst du die Farben ebenfalls direkt im Diagrammformatierungsbereich anpassen.


Praktische Beispiele

  • Ändern der Linienfarbe in einem Säulendiagramm: Verwende den gleichen VBA-Code, aber passe die Indexnummer an, um die spezifische Datenreihe zu adressieren.

  • Zuweisen von Farben in einem Kreisdiagramm:

    XYChart.Chart.SeriesCollection(1).Points(1).Interior.Color = RGB(255, 0, 0) ' Erste Punktfarbe ändern

Tipps für Profis

  • Nutze RGB-Werte für präzise Farbauswahl.
  • Experimentiere mit ColorIndex für vordefinierte Farben.
  • Erstelle benutzerdefinierte Farbpaletten, um Konsistenz in mehreren Diagrammen zu wahren.

FAQ: Häufige Fragen

1. Kann ich die Farben in einem Diagramm auch ohne VBA ändern?
Ja, du kannst die Farben direkt in den Diagrammeinstellungen ändern, indem du mit der rechten Maustaste auf die Linie oder den Bereich klickst und "Datenreihe formatieren" wählst.

2. Wie kann ich die Farben verschiedener Datenreihen in einem einzigen Diagramm ändern?
Du kannst jede Serie einzeln ansprechen, indem du die Indexnummer in der SeriesCollection anpasst, z. B. SeriesCollection(2) für die zweite Reihe.

3. Funktioniert dieser Code in Excel für Mac?
Ja, der VBA-Code sollte auch in der Mac-Version von Excel funktionieren, solange du die VBA-Umgebung korrekt öffnest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige