ich würde gerne in einem Diagramm über VBA die Reihen und Rubriken aktivieren und deaktivieren, wie dies über Excel über Daten auswählen und den Checkboxen möglich ist.
Welches Objekt ist dies?
Vielen Dank.
ActiveChart.FullSeriesCollection(2).IsFiltered = True
oder
Private Sub Test()
Dim cht As Chart
Dim ser As Series
'Retrieve our chart and seriescollection objects'
Set cht = Worksheets("Sheet1").ChartObjects("Chart 1").Chart
Set ser = cht.SeriesCollection(1)
'Set the first series line to be hidden'
With ser.Format.Line
If .Visible = msoTrue Then
.Visible = msoFalse
ser.Name = vbNullString
Else
.Visible = msoTrue
ser.Name = "Series 1"
End If
End With
End Sub
cuDim chr As Chart
Dim chrgrp As ChartGroup
Dim cat As CategoryCollection
Dim lngZaehler As Long
Set chr = ActiveSheet.ChartObjects(1).Chart
For Each chrgrp In chr.ChartGroups
Set cat = chrgrp.CategoryCollection()
For lngZaehler = cat.Count To 1 Step -1
' die ersten 2 Werte ausblenden
If lngZaehler
aber man bekommt sie nicht wieder eingeblendet, da sie in der CategoryCollection nicht mehr existieren.ActiveChart.ChartGroups(1).FullCategoryCollection(1).IsFiltered = False
cuUm Reihen und Rubriken in einem Excel-Diagramm über VBA auszublenden, kannst du folgende Schritte befolgen:
Öffne den VBA-Editor: Drücke ALT + F11
, um den VBA-Editor zu öffnen.
Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf VBAProject (DeinWorkbookName)
, wähle Einfügen
und dann Modul
.
Kopiere den folgenden Code in das Modul:
Sub DatenreiheAusblenden()
Dim cht As Chart
Set cht = Worksheets("Sheet1").ChartObjects("Chart 1").Chart
' Erste Datenreihe ausblenden
cht.SeriesCollection(1).IsFiltered = True
End Sub
Führe den Code aus: Schließe den VBA-Editor und führe das Makro über ALT + F8
aus.
Überprüfe dein Diagramm: Die erste Datenreihe sollte nun im Diagramm ausgeblendet sein.
Fehler: "Objekt nicht gefunden"
Lösung: Stelle sicher, dass der Name des Diagramms und das Arbeitsblatt korrekt sind. Überprüfe die Schreibweise und dass das Diagramm tatsächlich auf dem angegebenen Arbeitsblatt existiert.
Fehler: Makro funktioniert nicht
Lösung: Stelle sicher, dass du die richtige Excel-Version verwendest. Einige Funktionen sind möglicherweise nur in Excel 2013 oder neuer verfügbar.
Eine alternative Methode zum Ausblenden von Datenreihen in einem Diagramm ist die Verwendung von Excel-Checkboxen:
Entwicklertools
> Einfügen
und wähle Checkbox
.Hier ist ein Beispielskode:
Private Sub CheckBox1_Click()
Dim cht As Chart
Set cht = Worksheets("Sheet1").ChartObjects("Chart 1").Chart
If CheckBox1.Value = True Then
cht.SeriesCollection(1).IsFiltered = False
Else
cht.SeriesCollection(1).IsFiltered = True
End If
End Sub
Beispiel 1: Ausblenden von Datenpunkten
Um spezifische Datenpunkte in einer Datenreihe auszublenden, kannst du folgendes Skript verwenden:
Sub PunkteAusblenden()
Dim ser As Series
Set ser = ActiveChart.SeriesCollection(1)
ser.Points(1).Format.Fill.Visible = msoFalse ' Erster Punkt ausblenden
End Sub
Beispiel 2: Ausblenden der Rubrikachse
Um die Rubrikachse auszublenden, verwende:
Sub RubrikAusblenden()
Dim cht As Chart
Set cht = ActiveSheet.ChartObjects(1).Chart
cht.Axes(xlCategory).Format.Line.Visible = msoFalse ' Rubrikachse ausblenden
End Sub
FullSeriesCollection
, um Zugriff auf alle Datenreihen zu erhalten, auch wenn sie gefiltert sind. Dies kann dir helfen, besser mit großen Datensätzen zu arbeiten.1. Wie kann ich mehrere Datenreihen gleichzeitig ausblenden?
Du kannst eine Schleife verwenden, um mehrere Datenreihen auszublenden. Zum Beispiel:
For i = 1 To ActiveChart.SeriesCollection.Count
ActiveChart.SeriesCollection(i).IsFiltered = True
Next i
2. Funktioniert das auch in älteren Excel-Versionen?
Einige VBA-Funktionen sind möglicherweise nicht in älteren Versionen verfügbar. Überprüfe die Dokumentation von Microsoft, um die Kompatibilität zu gewährleisten.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen