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

Forumthread: Farbe der Datenbeschriftung ändern

Farbe der Datenbeschriftung ändern
06.02.2016 19:14:13
Fra
Hallo Ihr Lieben,
seid heute Morgen bastel ich schon am folgendem Problem:
Ich möchte die Farbe der Datenbeschriftung in Abhängigkeit des Wertes ändern.
Vereinfacht kann man sagen
Wenn der Wert = 0 ist dann ändere die Farbe auf Rot
Wenn der Wert = 1 ist dann ändere die Farbe auf Grün
Wenn der Wert = 2 ist dann ändere die Farbe auf Gelb
Sonst Blau.
Ich kriege einfach nicht die einzelnen Datemnbeschriftung angesprochen.
Wäre super, wenn Ihr mir da einen Tipp geben könntet.
Ganz vielen dank für eure Hilfe
Fra

Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Farbe der Datenbeschriftung ändern
06.02.2016 19:19:14
Beverly
Hi,
meinst du von Hand oder mit VBA?


AW: Farbe der Datenbeschriftung ändern
06.02.2016 21:07:37
Fra
Hallo Beverly,
Ich meine mit VBA, sorry habe ich vergessen zu erwähnen.
Gruss
Fra

AW: Farbe der Datenbeschriftung ändern
07.02.2016 08:22:28
Beverly
Hi Fra,
eine Möglichkeit:
Sub BeschriftungFormatieren()
Dim serReihe As Series
Dim arrWerte()
Dim lngPunkt As Long
With ActiveSheet.ChartObjects(1).Chart
For Each serReihe In .SeriesCollection
With serReihe
arrWerte = .Values
If .HasDataLabels = False Then
.ApplyDataLabels
Else
.DataLabels.Delete
.ApplyDataLabels
End If
For lngPunkt = 1 To .Points.Count
Select Case arrWerte(lngPunkt)
Case 0
' Schriftfarbe
.Points(lngPunkt).DataLabel.Font.ColorIndex = 3
' Hintergrundfarbe
' .Points(lngPunkt).DataLabel.Interior.ColorIndex = 3
Case 1
.Points(lngPunkt).DataLabel.Font.ColorIndex = 4
' .Points(lngPunkt).DataLabel.Interior.ColorIndex = 4
Case 2
.Points(lngPunkt).DataLabel.Font.ColorIndex = 6
' .Points(lngPunkt).DataLabel.Interior.ColorIndex = 6
Case Else
.Points(lngPunkt).DataLabel.Font.ColorIndex = 5
' .Points(lngPunkt).DataLabel.Interior.ColorIndex = 5
End Select
Next lngPunkt
End With
Next serReihe
End With
End Sub

Da ich nicht weiß, ob du die Schrift oder die Hintergrundfarbe des Labels färben willst, habe ich mal beides angegeben.


Anzeige
AW: Farbe der Datenbeschriftung ändern
07.02.2016 12:47:27
Fra
Hallo Karin,
das klappt soweit spitze.
Zwei Fragen habe ich noch,
1.) Wie kann ich statt den Index Farben auch die RGB Farben angeben ?
2.) Wie kann ich statt meinem "sonst Blau" ein "sonst die Datenbeschriftung löschen" setzen
Ganz vielen Dank im vorraus
Fra

Anzeige
AW: Farbe der Datenbeschriftung ändern
07.02.2016 18:09:41
Beverly
Hi Fra,
weshalb RGB? Es geht doch auch mit Color, wenn es nicht der ColorIndex sein soll:
                For lngPunkt = 1 To .Points.Count
Select Case arrWerte(lngPunkt)
Case 0
.Points(lngPunkt).DataLabel.Font.Color = 255
Case 1
.Points(lngPunkt).DataLabel.Font.Color = 5287936
Case 2
.Points(lngPunkt).DataLabel.Font.Color = 65535
Case Else
.Points(lngPunkt).DataLabel.Delete
End Select
Next lngPunkt



Anzeige
AW: Farbe der Datenbeschriftung ändern
08.02.2016 16:00:58
Fra
Hi Karin,
Wußte ich nicht, geht aber echt gut,
Ganz lieben Dank.
Fra

AW: Farbe der Datenbeschriftung ändern
08.02.2016 16:31:57
Beverly
Hi Fra,
weshalb dann den Beitrag auf Offen?


AW: Farbe der Datenbeschriftung ändern
07.02.2016 00:37:31
Piet
hallo
Die Zahlen 0-3 bitte in Range("E1:E4") schreiben
Das kleine Makro erstellt in Spalte A eine Farbtabelle mit der ColorIndex Zahl 1-56
Rot, Gelb, Grün und Blau findet man bei unter der Indexzahl 3, 5, 6, 10
Einfach mal ausprobieren und selbst in einer leeren Mappe herumspielen.
Soll eine Zahl in Fettdruck erscheinen Zelle.Font.Bold = True
Sub Farbe_aendern()
'Farbpalette aus Excel 97 mit Ganzzahlen
For i = 1 To 56
Cells(i, 1).Interior.ColorIndex = i
Cells(i, 2) = i
Next i
'Zellen nach Wert farblich markieren
For Each Zelle In Range("E1:E4")
If Zelle.Value = 0 Then Zelle.Font.ColorIndex = 3    'rot
If Zelle.Value = 1 Then Zelle.Font.ColorIndex = 10   'grün
If Zelle.Value = 2 Then Zelle.Font.ColorIndex = 6    'gelb
If Zelle.Value = 3 Then Zelle.Font.ColorIndex = 5    'blau
Next Zelle
End Sub
mfg Piet
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Datenbeschriftung in Excel-Diagrammen farblich anpassen


Schritt-für-Schritt-Anleitung

Um die Farbe der Datenbeschriftung in einem Excel-Diagramm abhängig von den Werten zu ändern, kannst du ein VBA-Makro verwenden. Folgendes Beispiel zeigt dir, wie du dies umsetzen kannst:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Wähle Einfügen > Modul, um ein neues Modul zu erstellen.
  3. Kopiere den folgenden Code in das Modul:
Sub BeschriftungFormatieren()
    Dim serReihe As Series
    Dim arrWerte()
    Dim lngPunkt As Long
    With ActiveSheet.ChartObjects(1).Chart
        For Each serReihe In .SeriesCollection
            With serReihe
                arrWerte = .Values
                If .HasDataLabels = False Then
                    .ApplyDataLabels
                Else
                    .DataLabels.Delete
                    .ApplyDataLabels
                End If
                For lngPunkt = 1 To .Points.Count
                    Select Case arrWerte(lngPunkt)
                        Case 0
                            .Points(lngPunkt).DataLabel.Font.ColorIndex = 3 ' Rot
                        Case 1
                            .Points(lngPunkt).DataLabel.Font.ColorIndex = 4 ' Grün
                        Case 2
                            .Points(lngPunkt).DataLabel.Font.ColorIndex = 6 ' Gelb
                        Case Else
                            .Points(lngPunkt).DataLabel.Font.ColorIndex = 5 ' Blau
                    End Select
                Next lngPunkt
            End With
        Next serReihe
    End With
End Sub
  1. Schließe den VBA-Editor und gehe zurück zu Excel.
  2. Führe das Makro aus, um die Farben der Datenbeschriftung in deinem Diagramm zu ändern.

Häufige Fehler und Lösungen

  • Fehler: Das Makro läuft nicht oder zeigt einen Fehler an.
    Lösung: Stelle sicher, dass das Diagramm, dessen Datenbeschriftung du ändern möchtest, das erste Diagramm auf dem aktiven Blatt ist. Andernfalls musst du den Index in ChartObjects(1) anpassen.

  • Fehler: Datenbeschriftungen erscheinen nicht.
    Lösung: Überprüfe, ob die Datenlabels aktiviert sind. Das Makro fügt sie hinzu, wenn sie nicht vorhanden sind.


Alternative Methoden

Eine weitere Möglichkeit, die Farben der Datenbeschriftung in einem Excel-Diagramm zu ändern, besteht darin, die Excel-Funktion BEDINGTE FORMATIERUNG zu verwenden. Diese ist jedoch auf Zellen anwendbar und nicht direkt auf Datenbeschriftungen im Diagramm. VBA ist hier die beste Lösung.


Praktische Beispiele

Hier ist ein Beispiel, wie du RGB-Farben anstelle der ColorIndex-Werte verwenden kannst:

For lngPunkt = 1 To .Points.Count
    Select Case arrWerte(lngPunkt)
        Case 0
            .Points(lngPunkt).DataLabel.Font.Color = RGB(255, 0, 0) ' Rot
        Case 1
            .Points(lngPunkt).DataLabel.Font.Color = RGB(0, 255, 0) ' Grün
        Case 2
            .Points(lngPunkt).DataLabel.Font.Color = RGB(255, 255, 0) ' Gelb
        Case Else
            .Points(lngPunkt).DataLabel.Delete ' Datenbeschriftung löschen
    End Select
Next lngPunkt

Tipps für Profis

  • Experimentiere mit verschiedenen Farbcodes, um die besten Ergebnisse zu erzielen. Nutze die RGB-Funktion, um präzise Farben festzulegen.
  • Du kannst die Datenbeschriftung im Diagramm auch auf andere Weise anpassen, indem du zusätzliche Bedingungen in die Select Case-Anweisung einfügst.
  • Nutze die Debug.Print-Anweisung, um den Wert von arrWerte(lngPunkt) zu überprüfen, falls du unerwartete Ergebnisse erhältst.

FAQ: Häufige Fragen

1. Wie kann ich die Schriftfarbe der Datenbeschriftung ändern?
Du kannst die Schriftfarbe wie im VBA-Beispiel oben beschrieben ändern, indem du die Font.Color oder Font.ColorIndex-Eigenschaft verwendest.

2. Kann ich die Datenbeschriftung auch entfernen?
Ja, du kannst die Datenbeschriftung mit .Delete entfernen, wie im Beispiel beschrieben, falls der Wert nicht den vorgegebenen Bedingungen entspricht.

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