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

Problem bei Diagrammerstellung

Forumthread: Problem bei Diagrammerstellung

Problem bei Diagrammerstellung
17.05.2024 17:07:32
reiner
Hallo Leute,

https://www.herber.de/bbs/user/169539.xlsm

nach Aufruf der Beispieldatei mit Daten aus den Monaten Januar bis Mai können über die Schaltfläche „Diagramm erstellen“ Diagramme erstellt werden.
Die nun geöffnete UF bietet 15 optionbutton zur Auswahl eines definierten Zeitraums sowie 13 checkboxes um eine oder mehrerer Datenreihen auszuwählen.
Weiterhin können zur Darstellung 4 unterschiedliche Diagrammformen gewählt werden. Voreingestellt ist die Diagrammform "3D-Säulen".

Die farbliche Darstellung der Datenreihen wird mit der Funktion "DiagrammGenerieren" im Modul "DiagrammErstellen" vorgegeben.
Die Diagramm-Darstellung der gewählten Datenreihen bei den Diagrammformen: 2D-Balken, 3D-Säulen und 3D-Linien funktioniert auch wie gewünscht.

Allerdings weicht die farbliche Darstellung der Datenreihen bei der Diagrammform: 2D-Linie wesentlich von denen der 3 vorgenannten Diagrammarten ab.
Woran kann es liegen, dass bei der Diagrammform: 2D-Linie andere Linienfarben dargestellt werden und wie können hier die gleichen Farben wie bei den 3 anderen Diagrammen angezeigt werden?

mfG
reiner
Anzeige

29
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem bei Diagrammerstellung
17.05.2024 20:00:56
schauan
Hallöchen,

ohne in Deine Datei geschaut zu haben ganz allgemein

Woran kann es liegen, dass bei der Diagrammform: 2D-Linie andere Linienfarben dargestellt werden
---> vielleicht hat Mickysoft hier verschiedene Standardfarben (sofern Du da nix programmiert hast)

wie können hier die gleichen Farben wie bei den 3 anderen Diagrammen angezeigt werden?
---> Einstellungen programmieren oder / und als eigene Vorlage hinterlegen und diese verwenden
Anzeige
Problem bei Diagrammerstellung
17.05.2024 22:28:25
reiner
dieser Beitrag war nicht hilfreich
AW: Problem bei Diagrammerstellung
18.05.2024 08:46:42
schauan
Hallöchen,

ich schreibe es mal anders...

Hast Du in Deinem Code mal geprüft, ob Du zum einen überall die Farben programmiert hast oder manchmal nicht und zum anderen auch gleich bzw. auf gleiche Weise?
Es macht zuweilen einen Unterschied, ob Du z.B. mit ColorIndex arbeitest oder mit RGB. Du kannst ja den Code schrittweise ausführen bzw. Haltepunkte an den Stellen setzen, wo Farben gesetzt werden, und schauen, was dabei mit den Farben im Diagramm passiert.
Siehe dazu z.B. auch
https://www.exceldemy.com/excel-vba-colorindex-chart/




Anzeige
AW: Problem bei Diagrammerstellung
18.05.2024 10:42:04
reiner
Hallo,
hier mal zur Verdeutlichung ein Auszug aus dem einwandfrei funktionierenden Programmcode der den Datenreihen in den Diagrammformen: 2D-Balken, 3D-Säulen und 3D-Linien die gewünschte Farbe zuweist.:

Set Wks = Worksheets("Stromverbrauch " & Jahr)

With Wks
.Unprotect
' Diagramm(e) vorhanden dann alle löschen
If .ChartObjects.Count > 0 Then .ChartObjects.Delete
frmDiagramm.cmdDiagrammEin.Enabled = False
' Diagramm hinzufügen mit den Dimensionen 0
Set Dia = .ChartObjects.Add(0, 0, 0, 0)
With Dia
' Schleife über alle Einträge im Array
For intReihe = 0 To UBound(arrReihen())
' neue Datenreihe erstellen
With .Chart.SeriesCollection.NewSeries
' Name aus Zeile 3, Spaltennummer aus Array
.Name = Wks.Cells(3, arrReihen(intReihe))
' Wertebereich zuweisen, Spaltennummer aus Array
With .Interior
If Wks.Cells(3, arrReihen(intReihe)) = "Verbrauch" Then .ColorIndex = 56 ' Verbrauch - Spalte "C" https://www.automateexcel.com/de/vba/colorindex-codeliste-rgb-farben/
If Wks.Cells(3, arrReihen(intReihe)) = "Netzbezug" Then .ColorIndex = 3 ' Netzbezug - Spalte "D"
If Wks.Cells(3, arrReihen(intReihe)) = "Eigenversorg." Then .ColorIndex = 43 ' Eigenversorgung -Spalte "E"
If Wks.Cells(3, arrReihen(intReihe)) = "PV-Erzeugung" Then .ColorIndex = 40 ' PV-Erzeugung - Spalte "F"
If Wks.Cells(3, arrReihen(intReihe)) = "Netzeinspeisung" Then .ColorIndex = 29 'Netzeinspung -Spalte "G"
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
If Wks.Cells(3, arrReihen(intReihe)) = "CO2-Reduktion" Then .ColorIndex = 37 'CO2-Reduktion - Spalte"H"
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
If Wks.Cells(3, arrReihen(intReihe)) = "Einspeise-vergütung" Then .ColorIndex = 29 ' Vergütung - Spalte "I"
If Wks.Cells(3, arrReihen(intReihe)) = "Netzbezug" Then .ColorIndex = 3 ' Netzbezug - Spalte "J"
If Wks.Cells(3, arrReihen(intReihe)) = "Eigenversorgung" Then .ColorIndex = 43 ' Eigenversorgung - Spalte "K"
If Wks.Cells(3, arrReihen(intReihe)) = "PV-Ertrag" Then .ColorIndex = 6 ' PV-Ertrag Spalte L"
If Wks.Cells(3, arrReihen(intReihe)) = "Strom-Einkauf" Then .ColorIndex = 35 ' Strom - Einkauf - Spalte "M"
If Wks.Cells(3, arrReihen(intReihe)) = "Strom-Einsparung" Then .ColorIndex = 5 ' Strom-Einsparung - Spalte "N"
Umläufe = Umläufe + 1
End With


Diese Farbzuweisung wird bei Anwahl der Diagrammform 2DLinie jedoch NICHT akzeptiert.
Ein paar Zeilen tiefer im Programmcode habe ich versucht den Datenreihen (2DLinien-Diagramm) eine Farbe zuzuweisen, allerdings ohne Erfolg. Es ist jedoch möglich den Datenreihen eine Linienstärke zuzuweisen (aber leider keine Farbe)

         If frmDiagramm.opt3Dia.Value = True Then

var = 0 'Linienstärke anpassen nur bei "2D-Linien-Diagramm
For var = 1 To intZaehler
.Chart.SeriesCollection(var).Select
With Selection.Format.Line
.Weight = 5
.ForeColor.RGB = RGB(255, 255, 0)
End With
Next
End If
End With


Warum hat die Farbzuweisung mit
.ForeColor.RGB = RGB(255, 255, 0)
keine Auswirkung?

reiner
Anzeige
AW: Problem bei Diagrammerstellung
18.05.2024 13:24:05
Oppawinni
Also bei mir wirkt das
.ForeColor.RGB = RGB(255, 255, 0)
alle Linien haben die gleiche Farbe.
Wenn ich da etwas anderes einstelle, hab ich auch ne andere Farbe...
Nur am Rande:
Schön, dass du Einrückungen machst,
aber bei den einzeiligen IF's ist das des Guten zu viel. Das sind ja abgeschlossene Befehle, da kommt dann kein schließendes End If. Insofern braucht es da auch keine Einrückung.
Anzeige
AW: Problem bei Diagrammerstellung
18.05.2024 13:55:35
reiner
hallo Oppawinni,

du hast recht die Linienfarbe ändert sich tatsächlich, aber nicht unter Excel 2007 sondern unter Excel 2019.
Auf meine vorhandene Excel-Version 2007 hatte ich bei Übertragung dieses Beitrags an das Forum hingewiesen.
Da mir normalerweise nur Excel 2007 zur Verfügung steht, stellt sich nach dieser für mich neuen Erkenntnis die Frage,
wie kann der Programmcode angepasst werden damit die Farbänderung auch unter Excel 2007 möglich ist.
Was unterscheidet denn das 2D-Liniendiagramm so entscheidend von den anderen 3 anwählbaren Diagrammtypen,
bei denen die gewünschte Farbzuweisung problemlos möglich ist?

reiner
Anzeige
AW: Problem bei Diagrammerstellung
18.05.2024 17:13:50
Oppawinni
Ich denk immer, ich sollte vielleicht mal mein Excel 2016 ersetzen, zumal ich ein Office 2021 hier liegen habe.....
Aber gegen Excel 2007 bin ja noch hoch aktuell. Wenn du dich von dem nicht trennen kannst....
..da kann ich dir nicht viel helfen...
..ähm... vielleicht kannst du einen Haltepunkt in den Code einbauen, und dann im Lokalfenster schauen, was das Objekt so her geben könnte, oder etwas in der Richtung?
Anzeige
Hallo Oppawinni, hallo schauan
18.05.2024 21:12:29
reiner
ich rechne es euch hoch an dass ihr versucht habt mir bei der Lösung des Problems behilflich zu sein. Ich habe die jeweiligen Vorschläge getestet aber leider brachte keiner den erhofften Erfolg. Vielleicht muss ich auch zur Kenntnis nehmen dass mein betagtes Excel 2007 nicht in der Lage ist eure Lösungsvorschläge zu verarbeiten und auf eine aktuellere Excel- Version umsteigen.
Trotzdem vielen Dank für die Beiträge und lasst die Angelegenheit auf sich beruhen.

Trotzdem werde ich die Frage weiterhin als offen markieren, in der Hoffnung dass vielleicht noch ein neuer Aspekt zur Problemlösung auftaucht. Wenn nicht - dann ist es eben so

reiner
Anzeige
AW: Hallo Oppawinni, hallo schauan | neue Version OK
21.05.2024 10:59:20
Franziska
Hallo liebe Forumsleute,
also, ich habe ja auch noch "alte" Excel-Versionen am Laufen.
Leider keine 2007, aber in der Version 2016, 2019 funktionieren die Hinweise TOP.
Ich kann zwar nicht alles nachvollziehen (liegt an den Dateien = Makro Verknüpfung), aber es klappt.

P.S. Habe es mit meinen Daten manuell in den Spalten AS bis AY und den entsprechenden Werten, die in Spalte C bis G gefordert sind ausprobiert und hat geklappt. Leider habe ich keine "csv-Datei" zum "Abfragen", aber manuell für Spalte C-G sollte es funktionieren.

Man kann nur Ahnen, dass auch langsam für jeden Nutzer von Programmen/Anwendungen (Microsoft!) eine Abo-Lösung so sicher ist, damit "Geld fließt" ;-)
Abo sind eben Abo ... !! Zeitraum wird vom "Ersteller" angesagt. Es gibt aber auch viele "freie Versionen".


Gruß Franziska
Anzeige
AW: Hallo Oppawinni, hallo schauan | neue Version OK
21.05.2024 14:39:28
schauan
Hallöchen Franziska,
Hier im Thread gab es noch keine Franziska...
AW: Hallo Oppawinni, hallo schauan | neue Version OK
21.05.2024 20:18:46
Franziska
Hallo schauan,
dann kann ich nur hier schreiben: Schau Schau ... an
Wusste nicht, dass man hier nichts schreiben darf!
AW: Hallo Oppawinni, hallo schauan | neue Version OK
21.05.2024 20:24:32
schauan
Hallöchen,
wo hast Du das gelesen 😉
Anzeige
AW: Hallo Oppawinni, hallo schauan | neue Version OK
21.05.2024 20:35:23
schauan
Im Thread ging es um Einfärben von Datenreihen und Du hast was von CSV geschrieben. Eine neue Version hing auch noch nicht dran, da könnte man meinen Du hast vielleicht den falschen Thread erwischt 🥺 Hätte ich auch anders formulieren können...
AW: Hallo Oppawinni, hallo schauan | neue Version OK
21.05.2024 20:54:04
Oppawinni
Da sind wir uns mal einig, ich hab auch nicht wirklich verstanden, worum es ging...
Ich dachte mir halt, wenn Franziska zufrieden ist, womit auch immer, dann ist es gut.....
Anzeige
AW: Problem bei Diagrammerstellung
18.05.2024 19:45:30
schauan
In dem von mir verlinkten Beitrag stand bisschen was zu 2007 und der Hinweis dort hat wirklich nicht geklappt? ....
AW: OFF TOPIC
18.05.2024 20:33:54
Oppawinni
Welchen Bezug hat dein Senf jetzt wieder mit meinem Post zu tun. Du kannst das Streuposten halt nicht lassen, Mr. Wichtig.
AW: Problem bei Diagrammerstellung
18.05.2024 11:24:09
reiner
danke dafür, aber der verlinkte Beitrag hilft mir nicht weiter
Anzeige
AW: Problem bei Diagrammerstellung
18.05.2024 11:35:24
schauan
Nun, wie gesagt, ich kann mir das erst morgen genauer anschauen :-(
AW: Problem bei Diagrammerstellung
18.05.2024 11:38:17
reiner
gut, dann bis morgen
AW: Sollte so...
18.05.2024 13:43:54
reiner
hallo Case,

wenn ich den Code anschauen dann sehe ich diese von dir veänderte Textzeile
                  '###############################################################################

.Parent.Parent.Interior.Color = RGB(255, 255, 0)
'###############################################################################


ich weiß nicht ob du das Makro getestet hast, aber bei mir ändert sich nichts an der Linienfarbe im 2DLiniendiagramm, weder unter Excel 2007 noch unter Excel 2019

reiner
Anzeige
Leider habe ich...
18.05.2024 14:43:38
Case
Moin, :-)

... keine alte Excelversion mehr. Nur 365. Da sieht es mit meinem Code so aus: ;-)
Userbild

Mit deinem Code so: ;-)
Userbild

Servus
Case
Anzeige
AW: Leider habe ich...
18.05.2024 15:26:10
reiner
hallo,

nach dem Beitrag von oppawiini habe ich gesehen, dass es sehr wohl mit meinem Code möglich ist, -sofern man eine höhere Version als Excel 2007 einsetzt- die Farbeinstellungen zu verändern, aber eben nicht mit Excel 2007.
Trotzdem vielen Dank für deinen Beitrag

reiner
AW: Leider habe ich...
18.05.2024 18:20:41
Oppawinni
Ich hab den Google gefragt und der meinte, dass
ActiveChart.SeriesCollection(1).Border.Color = RGB(255, 255, 0)
funktionieren könnte.
Anzeige
AW: Leider habe ich...
18.05.2024 19:41:35
schauan
Das und mehr stand u.a. in dem Beitrag hinter dem Link, den ich gepostet hatte.
AW: Leider habe ich...
18.05.2024 21:22:13
Oppawinni
Also der Code:


.Chart.SeriesCollection(var).Select
Selection.Format.Line.Weight = 5
Select Case var
Case 1: Selection.Border.Color = RGB(255, 0, 255)
Case 2: Selection.Border.Color = RGB(255, 255, 0)
Case 3: Selection.Border.Color = RGB(0, 255, 255)
Case Else: Selection.Border.Color = RGB(0, 255, 0)
End Select

tut es in Excel 2016 jedenfalls auch.
Anzeige
Danke
18.05.2024 21:50:27
reiner
hallo Winni,

mit dieser neuen Variante ist es tatsächlich möglich -wie gewünscht- den Datenreihen unterschiedliche Farben zuzuweisen, sowohl unter Excel 2019
als auch unter Excel 2007

Ich betrachte das Problem hiermit als gelöst, danke nochmals für deine Ausdauer und ein schönes Wochenende

reiner
Anzeige
AW: Leider habe ich...
18.05.2024 20:30:10
Oppawinni
ja nun, das kann ja sein, aber ich lese eher nicht was du postest, womöglich stoße ich da bloß auf irgend einen Streupost, wo ich mir erst aus den Fingern lutschen müsste, welchen Bezug das haben könnte.... es sei denn, das hängt an einem meiner Posts und da verdienst du ja ggf. eine schönen Spruch.
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige