Meilensteintrendanalyse Diagramm Formatierung

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Label
Bild

Betrifft: Meilensteintrendanalyse Diagramm Formatierung
von: Raphael Rudawski
Geschrieben am: 10.08.2015 11:48:45

Hallo Community,
ich versuche einen Meilensteintrendanalyse zu standardisieren.
Hierzu würde ich ganz gerne alle Zellen, welche einen Eintrag haben durchgehen und den dafür vorhergesehen Graphen mit gleichen Meilensteinsymbolen (Rauten), jedoch mit unterschiedlichen Farben versehen.
Ich habe mal meinen Fantasiecode mit Hilfe einer ähnlichen Problematik in diesem Forum verfasst, komme jedoch auf keine Lösung.
Eventuell kann mir einer von euch helfen ? ;)
Anbei die Datei inkl. Graph und Daten.
https://www.herber.de/bbs/user/99463.xlsm
Viele Grüße,
Raphael

Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Beverly
Geschrieben am: 10.08.2015 14:13:15
Hi Raphael,
also irgendwie verstehe ich dein Vorhaben nicht so richtig - lt. deinem Code sollen nur die ersten 3 Datenpunkte jeder Reihe gefärbt werden. Beschreibe doch mal an konkreten Daten, wie gefärbt und welche Marker verändert werden sollen.




Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Raphael Rudawski
Geschrieben am: 10.08.2015 14:25:37
Hallo Karin,
ich möchte dass das Makro prüft ob Daten vorhanden sind. Wenn welche vorhanden sind, sollen die Datenpunkte im Graphen zu Rauten mit gleicher Größe werden (gleiches aussehen der Datenpunkte) jedoch mit unterschiedlicher Farbe versehen werden.
Wenn das Makro auf eine leere Zeile stößt, kann die Prozedur abgebrochen werden ;)
Hintergrund ist ein standardisierte Diagramm, in welchem jeder Daten eintragen kann ohne zusätzlich aufwendige Formatierungen vornehmen zu müssen.
Ich hoffe du kannst mir weiterhelfen ;)

Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Raphael Rudawski
Geschrieben am: 10.08.2015 14:41:45
Wäre für jeden Ansatz sehr dankbar ;)
Viele Grüße,
Raphi

Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Beverly
Geschrieben am: 10.08.2015 14:42:32
Hi,
das ist mir schon klar, aber lt. DEINEM Code werden nur die ersten 3 Datenpunkte (irgendwie) gefärbt - und wie sollen die anderen gefärbt werden? Oder sollen es in jeder Datenreihe tatsächlich nur die ersten 3 sein?




Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Raphael Rudawski
Geschrieben am: 10.08.2015 15:45:25
Ah sorry. Nein es sollen alle Punkte einer Datenreihe gefärbt werden.
Sorry, hatte mich unklar ausgedrückt

Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Beverly
Geschrieben am: 10.08.2015 17:42:39
Den Markertyp kannst du für die gesamte Datenreihe ändern - nach diesem Prinzip:

    Dim lngReihe As Long
    With ActiveSheet.ChartObjects("Diagramm 1").Chart
        For lngReihe = 1 To .SeriesCollection.Count
            With .SeriesCollection(lngReihe)
                .MarkerStyle = 2
                .MarkerSize = 10
            End With
        Next lngReihe
    End With

Deine Datenreihen haben mehr als 3 Datenpunkte, in deinem Code gibst du nur die Farben für 3 Datenpunkte an - das musst du dann entsprechend anpassen.



Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Raphael Rudawski
Geschrieben am: 11.08.2015 10:00:13
Hallo Karin,
vielen Dank für deine schnelle Antwort.
Leider bekomme ich bei:

Function Diagramm()
Dim lngReihe As Long
    With ActiveSheet.ChartObjects("Diagramm 1").Chart
        For lngReihe = 1 To 52.SeriesCollection.Count
            With .SeriesCollection(lngReihe)
                .MarkerStyle = 2
                .MarkerSize = 10
            End With
        Next lngReihe
    End With
End Function
Nur einen Syntaxfehler bei der 'For lngReihe = 1 To 52.SeriesCollection.Count
Hättest du noch einen Tipp für mich ?
https://www.herber.de/bbs/user/99483.xlsm

Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Beverly
Geschrieben am: 11.08.2015 10:04:36
Hi,
meine Codezeile heißt anders - ich weiß nicht, woher bei dir die 52 kommt...




Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Raphael Rudawski
Geschrieben am: 11.08.2015 14:21:25
Ich habe das ganze jetzt einmal umgeschrieben was auch super funktioniert bis auf eins.....die Formatierung. Findest du den Fehler in meinem Loop ? ;)

Function Diagramm_1_erstellen()
'Tabelle erstellen
Sheets("Tabelle1").Select
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlLineMarkers
ActiveChart.SetSourceData Source:=Sheets("Datentabelle_KW").Range("B10:BB43")
'Achsen anpassen
'für KWs max=52
ActiveChart.Axes(xlValue).MaximumScale = 52
ActiveChart.Axes(xlValue).MinimumScale = 0
ActiveChart.Axes(xlValue).MajorUnit = 1
ActiveChart.Axes(xlValue).Select
Selection.TickLabels.NumberFormat = "KW ##"
Selection.TickLabels.NumberFormat = "KW ##"
With ActiveChart.Axes(xlCategory).Select
Selection.TickLabels.NumberFormat = "KW ##"
Selection.TickLabels.NumberFormat = "KW ##"
End With
s = 2
k = 11
Do While Not s = 0
If Cells(k, 2) = "" Then
s = 0
Else
z = k - 10
ActiveChart.SeriesCollection(z).Select
With Selection
.MarkerStyle = 1
.MarkerSize = 7
End With
Selection.MarkerStyle = 2
Selection.MarkerSize = 14
End If
k = k + 1
Loop
End Function


Bild

Betrifft: AW: Meilensteintrendanalyse Diagramm Formatierung
von: Raphael Rudawski
Geschrieben am: 11.08.2015 14:34:50
Danke Karin!!!
Ich habe es hinbekommen ;)

Function Diagramm_1_erstellen()
'Tabelle erstellen
Sheets("Tabelle1").Select
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlLineMarkers
ActiveChart.SetSourceData Source:=Sheets("Datentabelle_KW").Range("B10:BB43")
'Achsen anpassen
'für KWs max=52
ActiveChart.Axes(xlValue).MaximumScale = 52
ActiveChart.Axes(xlValue).MinimumScale = 0
ActiveChart.Axes(xlValue).MajorUnit = 1
ActiveChart.Axes(xlValue).Select
Selection.TickLabels.NumberFormat = "KW ##"
Selection.TickLabels.NumberFormat = "KW ##"
With ActiveChart.Axes(xlCategory).Select
Selection.TickLabels.NumberFormat = "KW ##"
Selection.TickLabels.NumberFormat = "KW ##"
End With
s = 2
k = 11
z = 1
Do While Not s = 0
If Cells(k, 2) = "" Then
s = 0
Else
'Formatierung Datenreihe
End If
k = k + 1
Loop
End Function

Function Diagramm()
Dim lngReihe As Long
    With ActiveSheet.ChartObjects("Diagramm 31").Chart
        For lngReihe = 1 To .SeriesCollection.Count
            With .SeriesCollection(lngReihe)
                .MarkerStyle = 2
                .MarkerSize = 10
            End With
        Next lngReihe
    End With
End Function


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Meilensteintrendanalyse Diagramm Formatierung"