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

Diagram bestimmte Datenpunkte nicht anzeigen

Diagram bestimmte Datenpunkte nicht anzeigen
27.09.2018 11:26:00
David
Hallo,
folgende Ausgangssituation. Auf einem Sheet werden einige Datenpunkte angezeigt, deren Werte "immer" vorliegen und nicht Null bzw. #NV sind, die Anzahl dieser Datenpunkte ist variabel. Es ist ein Balkendiagram.
Der Nutzer kann zusätzlich hinter den Datenpunkten jeweils die Farbe, die dem entsprechenden Punkt zugeordnet sein soll auswählen. Soll ein Punkt nicht im Diagramm angezeigt werden, dann wird in der Liste "keine" ausgewählt.
Zusätzlich befinden sich zur Übersicht ab und an leere Zeilen zwischen den Datenpunkten.
Nun wird via Makro automatisch das Diagramm erstellt. Codeauschnitt:
cht1.SeriesCollection.Add Source:=absdelta
cht1.SeriesCollection(1).XValues = name

absdelta und Name, sind Ranges vom ersten Datenpunkt bis zum letzten jeweils, dass lässt sich über eine Schleife ja einfach feststellen. Ich weiß, dass wenn ein Datenpunkt den Wert #NV hat er nicht eingeblendet wird, so bekomme ich die leeren Zeilen raus(dort steht in weiß ein #NV in der Zelle). Aber wie bekomme ich die Datenpunkte raus für die bei der Farbauswahl "keine" getroffen wurde?

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Zeilen ausblenden...
27.09.2018 14:07:47
Beverly
Hi,
...oder ansonsten eine Beispielmappe hochladen.


AW: Zeilen ausblenden...
27.09.2018 15:18:04
David
Hallo,
Zeilen Ausblendet geht nicht. Ich bin schon einen Schritt weiter, und lasse einfach in der Schleife eine Abfrage stattfinden ob "keine" bzw. "leer" wenn das nicht zutrifft wird eine neue Datenreihe erstellt. Das funktioniert jetzt auch. Allerdings ist es eine xlColumnStacked und mit .SeriesCollection.NewSeries wird die neue Reihe, im selben Balken als zusätzlicher Wert hinzugefügt, dabei soll der Balken neben dem ersten stehen. xlColumnStaked ist notwendig, da es sich um Fehlerbalken handeln die nicht bei 0 starten. Hat zufällig jemand eine Idee wie ich den neuen Balken daneben bekomme?
Do Until StrComp(checkend, "Ende", vbTextCompare) = 0
If ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 2).Value = "" Or  _
ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 2).Value = "keine" Then
Else
With cht1
With .SeriesCollection.NewSeries
If ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter,  _
2).Value = "Balken-Dunkelblau" Then
.XValues = ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Range( _
ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 1), ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 1))
.Values = ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Range( _
ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 4), ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 4))
.ApplyDataLabels
.Format.Fill.Visible = msoTrue
.Format.Fill.ForeColor.RGB = RGB(0, 53, 101)
.Format.Fill.Transparency = 0
.Format.Fill.Solid
.Format.Line.Visible = msoTrue
.Format.Line.ForeColor.RGB = RGB(0, 0, 0)
' ########## Balken 2
ElseIf ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells( _
table_counter, 2).Value = "Balken-Metallgrau" Then
.XValues = ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Range( _
ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 1), ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 1))
.Values = ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Range( _
ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 4), ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 4))
.ApplyDataLabels
.Format.Fill.Visible = msoTrue
.Format.Fill.ForeColor.RGB = RGB(176, 181, 184)
.Format.Fill.Transparency = 0
.Format.Fill.Solid
.Format.Line.Visible = msoTrue
.Format.Line.ForeColor.RGB = RGB(0, 0, 0)
' ########## Balken 3
ElseIf ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells( _
table_counter, 2).Value = "Balken-Hellblau" Then
.XValues = ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Range( _
ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 1), ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 1))
.Values = ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Range( _
ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 4), ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 4))
.ApplyDataLabels
.Format.Fill.Visible = msoTrue
.Format.Fill.ForeColor.RGB = RGB(141, 180, 226)
.Format.Fill.Transparency = 0
.Format.Fill.Solid
.Format.Line.Visible = msoTrue
.Format.Line.ForeColor.RGB = RGB(0, 0, 0)
' ########## Kein Balken
Else
.Format.Fill.Visible = msoFalse
.Format.Line.Visible = msoFalse
End If
End With
End With
series_counter = series_counter + 1
End If
table_counter = table_counter + 1
checkend = ThisWorkbook.Sheets("Efficiency_Waterfall_Chart").Cells(table_counter, 1).Value
Loop

Anzeige
AW: Zeilen ausblenden...
27.09.2018 15:20:38
David
Es sollte erwähnt werden, dass wenn Balken-Farbe ausgewählt ist es sich um einen normalen Balken handelt. Aber es kann auch nur eine Farbe ausgewählt werden, dann ist es eben ein Fehlerbalken. Zweiteres ist noch nicht in der Schleife integriert.
AW: Zeilen ausblenden...
27.09.2018 15:37:44
David
Ich vermute das es insgesamt schlich am einfachsten wäre, das über ein Array zu lösen, dass als Diagramm Bereich übergeben wird. Aber offensichtlich kann Excel das nur bis zu einer gewissen Array Größe, was wiederum ein Problem wird.
AW: Zeilen ausblenden...
27.09.2018 15:38:32
David
Vergessen auf offen zu stellen
AW: Zeilen ausblenden...
27.09.2018 16:24:27
David
Abgehackt, neuer Ansatz
AW: Zeilen ausblenden...
27.09.2018 16:24:47
David
Jetzt aber wirklich, abgehackt

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige