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

Werte in Balkendiagramm überspringen

Werte in Balkendiagramm überspringen
19.03.2021 16:11:50
Andreas
Hallo zusammen,
https://www.herber.de/bbs/user/144963.xlsm
in meiner Tabelle möchte ich Artikel wiedergeben, die Bestimmte Kriterien erfüllen.
Zuerst wird eine Breite und Länge in B2 und C2 eingegeben. Damit werden alle Zeilen, aus der Tabelle DQ, die kleiner wie die eingegebenen Werte sind wiedergegeben.
Mit Datenschnittstellen, wird dann nach weiteren Kriterien gefiltert.
Jetzt möchte ich noch eine Option haben, die auf den ersten Blick die Häufigkeit wiedergibt, wie oft der Artikel mit den gewählten Kriterien in der Tabelle verfügbar ist.
Da ist mir leider nur ein Balkendiagramm eingefallen. Artikel die allerdings nur 1x vorkommen sind uninteressant, diese möchte ich daher im Balkendiagramm komplett ausblenden/überspringen.
Das klappt aber nicht, da das Diagramm sich ja variabel verändern kann, wenn die Kriterien verändert werden.
Bedanke mich vorab für eure Hilfe/Lösungsvorschläge und wünsche ein schönes Wochenende
Gruß Andreas

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte in Balkendiagramm überspringen
21.03.2021 11:29:43
Beverly
Hi Andreas,
normalerweise kann man in einem Diagramm unerwünschte Rubriken ausblenden, indem man sie unter "Daten auswählen..." abwählt - das bringt bei dir jedoch nicht das gewünschte Ergebnis, weil das Diagramm bereits auf gefilterten Zeilen basiert. Ich sehe hier also nur eine VBA-Lösung: die gefilterten Zeilen in ein anderes Tabellenblatt (im Beispielcode Tabelle1 - entsprechend anpassen!) kopieren, das Diagramm auf den kopierten Daten aufbauen und anschließend die Rubriken ausblenden, die deiner Bedingung nicht entsprechen:
Sub DiaBearbeiten()
Dim lngZeilen As Long
Dim lngLetzte As Long
Dim lngZaehler As Long
Dim chrDia As Chart
Dim serReihe As Series
Dim rngBereich As Range
' Bildschirmaktualisierung aus
Application.ScreenUpdating = False
' Tabelle1 leeren
Worksheets("Tabelle1").Cells.ClearContents
With Worksheets("Anwendung")
' letzte Zeile an Daten ermitteln
lngLetzte = .ListObjects(1).DataBodyRange.Rows.Count + 16
' Spalten P und Q sichtbare Zellen nach Tabelle1 kopieren
.Range(.Cells(17, 16), .Cells(lngLetzte, 17)).SpecialCells(xlCellTypeVisible).Copy _
Worksheets("Tabelle1").Range("A1")
' Anzahl an sichtbaren Zeilen ermitteln
lngZeilen = .ListObjects(1).DataBodyRange.Columns(1).SpecialCells(xlCellTypeVisible). _
Count
With Worksheets("Tabelle1")
' Bereich für Diagramm festlegen
Set rngBereich = .Range(.Cells(1, 1), .Cells(lngZeilen, 2))
End With
' bezogen auf das Diagramm
With .ChartObjects(1).Chart
' Datenbereich zuweisen
.SetSourceData Source:=rngBereich
' Datenreihe auf Variable schreiben
Set serReihe = .FullSeriesCollection(1)
' Schleife über alle Rubriken, alle einblenden
For lngZaehler = .ChartGroups(1).FullCategoryCollection.Count To 1 Step -1
.ChartGroups(1).FullCategoryCollection(lngZaehler).IsFiltered = False
Next lngZaehler
' Schleife über alle Rubriken
For lngZaehler = .ChartGroups(1).FullCategoryCollection.Count To 1 Step -1
' wenn Wert der Datenreihe = 1 ist dann Rubrik ausblenden
If serReihe.Values(lngZaehler) = 1 Then
.ChartGroups(1).FullCategoryCollection(lngZaehler).IsFiltered = True
End If
Next lngZaehler
End With
End With
' Bildschirmaktualisierung ein
Application.ScreenUpdating = True
End Sub
Das Makro muss jedesmal neu ausgeführt werden, falls du deine Daten änderst oder eine neue Auswahl triffst.
Du hast ausgewählt "VBA nein" - ich hoffe, du weißt wie man ein Standardmodul erstellt und den Code dort hineinkopiert? Andernfalls nachfragen.

Beverly's Excel - Inn

Anzeige
AW: Werte in Balkendiagramm überspringen
23.03.2021 15:13:41
Andreas
Hallo Karin,
Danke für deine Mühe. Leider kenne ich mich mit VBA überhaupt nicht aus.
Zitat
die gefilterten Zeilen in ein anderes Tabellenblatt (im Beispielcode Tabelle1 - entsprechend anpassen!) kopieren, das Diagramm auf den kopierten Daten aufbauen und anschließend die Rubriken ausblenden, die deiner Bedingung nicht entsprechen:
Zitat Ende
Kannst du mir das genauer erklären?
Zitat
Das Makro muss jedesmal neu ausgeführt werden, falls du deine Daten änderst oder eine neue Auswahl triffst.
Zitat Ende
Was bedeutet das und wie mache ich das?
Gruß Andreas

Anzeige
AW: Werte in Balkendiagramm überspringen
23.03.2021 16:52:31
Beverly
Hi Andreas,
ich habe ein neues Tabellenblatt hinzugfügt, das Makro in ein Standardmodul eingefügt, eine Schaltfläche im Tabellenblatt erstellt und diese mit dem Makro verknüpft. Jedesmal wenn du die Schaltfläche nun drückst wird das Makro ausgeführt.
Wenn du deine Daten änderst bzw. deine Auswahl, muss sich doch auch das Diagramm ändern, weil andere Daten angezeigt werden sollen - folglich muss das Makro dann die gefilterten Daten nach Tabelle1 kopieren, dem Diagramm den neuen Datenbereich zuweisen (es könnten weniger oder mehr Daten wie vorher gefiltert worden sein) und die Rubriken mit dem Wert 1 ausblenden und andere, die möglicherweise vorher ausgeblendet waren, wieder einblenden.
https://www.herber.de/bbs/user/145055.xlsm

Beverly's Excel - Inn

Anzeige
AW: Werte in Balkendiagramm überspringen
24.03.2021 15:07:28
Andreas
Hi Karin,
tut mir leid das ich keine Rückmeldung mehr gegeben habe.
Bin neu in dem Forum und ist ohnehin das erste, was ich benutze.
Hab das völlig vergessen.
In meinem neuen Beitrag, hast du alle meine Fragen beantwortet und deine Lösung gefällt mir wirklich gut.
Werde jetzt versuchen das nachzubilden und Bedanke mich für deine Mühe.
Gruß Andreas

AW: Werte in Balkendiagramm überspringen
22.03.2021 09:37:08
ChrisL
Hi Andreas
Hier mal eine Idee:
https://www.herber.de/bbs/user/145007.xlsx
Breite/Länge (A1:B2) wird als Tabelle in Power-Query geladen und mit den Quelldaten verbunden. Anhand der Parameter werden die Daten (vor-)gefiltert.
- Benötigt eine Aktualisierung, welche sich bei Bedarf mittels Worksheet_Change noch automatisieren liesse.
Ebenfalls in Power-Query findet bereits die Textverkettung und Ermittlung der Anzahl statt.
Die Power-Query Daten werden ins Datenmodell geladen.
Die Daten aus dem Datenmodell werden für die Pivot verwendet. Datenschnitt eingefügt. Die Pivot A18:Hn wird kopiert. In der Kopie fügst du den Filter für die Anzahl ein und darauf baust du die Pivot-Chart auf.
cu
Chris
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige