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

Diagramm (Gantt) automatisch einfärben

Diagramm (Gantt) automatisch einfärben
22.05.2016 19:31:35
Bjoern
Hi,
ich möchte gerne ein Excel-Gantt-chart automatisch einfärben.
Das Gantt-chart wird für eine Autovermietung benötigt und soll die Leihzeiten visualisieren. In der Tabelle werden die Besetzt-Zeiten in Abhängigkeit der Kundenalters eingefärbt. Die Zellenfärbung soll den entsprechenden Balken im Diagramm einfärben, um sofort das Alter des Kunden zu erkennen.
Bislang habe ich ich nur normale Balkendiagramme mit dieser Formel autimatisch einfärben lassen. Leider bekomme ich diese Funktion nicht in ein Gantt-chart.
Mit diesem Code habe ich bislang gearbeitet, bei Balekndiagrammen fnktioniert er gut...
Sub AutimatischFaerben()
Dim intPunkt As Integer
With Charts("Diagramm1").SeriesCollection(1)
For intPunkt = 1 To .Points.Count
.Points(intPunkt).Interior.Color = _
Worksheets("Tabelle1").Cells(intPunkt + 1, 1).Interior.Color
Next intPunkt
End With
End Sub

https://www.herber.de/bbs/user/105721.xlsm
Ist das überhaupt möglich? Im Gantt-Diagramm zählt er die Series-collection nicht zeilenweise aus, sondern aus einem Bereich über Zeilen und Spalten.
Grüße

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramm (Gantt) automatisch einfärben
22.05.2016 19:55:26
Beverly
Hi Björn,
versuche es mal so:
Sub AutimatischFaerben()
Dim intPunkt As Integer
Dim strBereich As String
Dim lngReihe As Long
Dim serReihe As Series
With Worksheets("Tabelle1").ChartObjects("Diagramm 1").Chart
For lngReihe = 1 To .SeriesCollection.Count
Set serReihe = .SeriesCollection(lngReihe)
strBereich = Split(serReihe.Formula, ",")(2)
For intPunkt = 1 To serReihe.Points.Count
If Worksheets("Tabelle1").Range(strBereich).Cells(intPunkt).Interior.ColorIndex   _
xlNone Then
serReihe.Points(intPunkt).Interior.Color = _
Worksheets("Tabelle1").Range(strBereich).Cells(intPunkt).Interior.Color
End If
Next intPunkt
Next lngReihe
End With
Set serReihe = Nothing
End Sub


Anzeige
AW: Diagramm (Gantt) automatisch einfärben
23.05.2016 18:36:20
Bjoern
Klasse, vielen Dank!
Wie rufe ich das Diagramm auf, wenn es sich NICHT im Worksheet der Datentabelle befindet, sondern in einem eigenständigen Blatt?
Rechte Maustaste, Diagramm verschieben..., Neues Blatt "Diagramm1"
Grüße

AW: Diagramm (Gantt) automatisch einfärben
23.05.2016 19:44:24
Beverly
Da ersetzt du einfach die Zeile
   With Worksheets("Tabelle1").ChartObjects("Diagramm 1").Chart

durch diese
   With Charts("Diagramm1")



Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige