Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1272to1276
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

Untersch. Farbe in Diagramm je nach Wert

Untersch. Farbe in Diagramm je nach Wert
Tim
Hallo an alle,
ich habe eine Frage zu einem einfachen (Säulen-)Diagramm und hoffe, Ihr könnt mir weiterhelfen:
Gibt es hier eine Möglichkeit, dass die Säulen automatisch eine bestimmte Farbe erhalten, je nachdem, wie groß der zugrundeliegende Wert ist, ähnlich wie einer bedingten Formatierung im Bezug auf Zellen ?
Beispiel:
Ist der Wert einer Säule 50 oder kleiner, soll sie rot erscheinen, liegt er zwischen 50 und 100 orange etc.
Insgesamt gibt es 5 verschiedene Bereiche, in denen sich der Wert einer Säule bewegen kann.
Viele Grüße und vielen Dank Euch im Voraus für jeden Tipp,
Tim
AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 21:04:41
Tim
Hallo,
ich habe im Netz folgenden Code gefunden.
Hier habe ich jedoch zwei Probleme:
1) Ich muss immer auf das Diagramm klicken bevor ich den Code laufen lasse.
2) Wenn der Code läuft, färbt er zwar die Diagrammbalken ein, allerdings mit völlig anderen Farben, als von mir in den Zellen A17:A21 vorgegeben.
VG und nochmals danke für jeden Tipp,
Tim
AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 22:00:43
Beverly
Hi Tim,
schau dir mal das Beispiel Balkenfarbe Referenzabhängig auf meiner HP, Seite "Diagramme" an ( Link zur Vorschau ) - das bezieht sich zwar auf ein Balkendiagramm, ist aber bei einem Säulendiagramm genau so.


Anzeige
AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 22:31:45
Tim
Hallo Karin,
vielen Dank für Deine Antwort !
Das ist glaube ich nicht ganz, wonach ich suche oder ich habe es falsch verstanden.
Ich kann hier leider nur die Vorschau, nicht aber den eigentlichen Link öffnen, das liegt wohl an den Sicherheitseinstellungen hier.
Ich suche nach einem Weg, dass die Säulen automatisch eine bestimmte Farbe erhalten, je nach dem, in welchem Bereich sich der entsprechende Wert gerade befindet (0-49 = rot, 50 bis 99 = orange, 100 bis 149 = grün, 150 bis 199 = blau, ab 200 = lila).
VG und nochmals danke,
Tim
AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 22:42:52
Tim
Hallo,
hier noch ein kleiner Nachtrag:
Das Problem mit dem benötigten Anklicken des Diagramms habe ich gelöst.
Was mir jetzt nur noch fehlt, ist eine Möglichkeit, Farben exakt definieren zu können, da in meinem Code die Balken vollkommen anders eingefärbt werden, als ich in den entsprechenden Zellen vorgegeben habe.
VG,
Tim
Anzeige
AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 22:55:05
Josef

Hallo Tim,
in Zeile x kannst du doch die Farben bestimmen.

« Gruß Sepp »

AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 23:18:00
Tim
Hallo Sepp,
vielen Dank und sorry, ich hatte wohl vergessen, den Code zu posten - hier mein letzter Stand der Dinge:
Es funktioniert alles, nur, dass ich hier eben die Farben nicht genau festlegen kann.
Option Explicit
Sub ColorByValue()
Dim rPatterns As Range
Dim iPattern As Long
Dim vPatterns As Variant
Dim iPoint As Long
Dim vValues As Variant
Dim rValue As Range
Set rPatterns = ActiveSheet.Range("A17:A21")
vPatterns = rPatterns.Value
ActiveSheet.ChartObjects("Chart 2").Activate
With ActiveChart.SeriesCollection(1)
vValues = .Values
For iPoint = 1 To UBound(vValues)
For iPattern = 1 To UBound(vPatterns)
If vValues(iPoint) 
VG,
Tim
Anzeige
AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 23:29:09
Josef

Hallo Tim,
Sub ColorByValue()
  Dim rPatterns As Range
  Dim iPattern As Long
  Dim iPoint As Long
  Dim vValues As Variant
  Dim rValue As Range
  
  With ActiveSheet
    Set rPatterns = .Range("A17:A21")
    
    With .ChartObjects("Chart 2").Chart.SeriesCollection(1)
      vValues = .Values
      For iPoint = 1 To UBound(vValues)
        For iPattern = 1 To rPatterns.Count
          If vValues(iPoint) <= rPatterns(iPattern, 1) Then
            .Points(iPoint).Format.Fill.ForeColor.RGB = rPatterns(iPattern, 1).Interior.Color
            Exit For
          End If
        Next
      Next
    End With
  End With
  
End Sub



« Gruß Sepp »

Anzeige
AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 23:40:11
Tim
Hallo Sepp,
vielen vielen Dank dafür - das ist spitze !! :-)
Ich habe nur noch eine kleine Frage dazu:
Auf meinem Blatt sind insgesamt 5 Diagramme, für die alle das gleiche gelten soll.
Kann ich die hier irgendwie einbinden oder muss ich den Hauptteil des Codes fünf mal kopieren ?
VG und nochmals danke,
Tim
AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 23:43:23
Josef

Hallo Tim,
wenn der Farbbereich für alle der selbe ist, dann so.
Sub ColorByValue()
  Dim objChrt As ChartObject
  Dim rPatterns As Range
  Dim iPattern As Long
  Dim iPoint As Long
  Dim vValues As Variant
  Dim rValue As Range
  
  With ActiveSheet
    Set rPatterns = .Range("A17:A21")
    For Each objChrt In .ChartObjects
      With objChrt.Chart.SeriesCollection(1)
        vValues = .Values
        For iPoint = 1 To UBound(vValues)
          For iPattern = 1 To rPatterns.Count
            If vValues(iPoint) <= rPatterns(iPattern, 1) Then
              .Points(iPoint).Format.Fill.ForeColor.RGB = rPatterns(iPattern, 1).Interior.Color
              Exit For
            End If
          Next
        Next
      End With
    Next
  End With
  
End Sub



« Gruß Sepp »

Anzeige
AW: Untersch. Farbe in Diagramm je nach Wert
16.08.2012 23:54:15
Tim
Hallo Sepp,
das klappt absolut super - vielen Dank nochmal für die tolle Hilfe !
VG und bis zum nächsten Mal, :)
Tim

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige