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

Pivot chart via makro sortieren

Pivot chart via makro sortieren
09.06.2014 16:44:33
Spenski

hi.
ich möchte gerne ein pivotchart mit hilfe eines makros sortieren.
ich habe es per makrorecorder aufgenommen und es funktioniert mehr oder weniger.
mein problem ist das ich ja dem makro gesagt hab was es machen soll. also was ausgefiltert werden soll.
ich würde aber gerne auf einem anderen tabellenblatt(Startseite) in B1 die KST eingeben die NICHT ausgefiltert werden soll und in B2 das Datum das NICHT ausgefiltert werden soll
so in etwa :
if not Startseite B1 = 22790 then .PivotItems("22790").Visible = False
geht sowas??
...................
zweites problem ist .PivotItems("Dienstag, 10. Juni 2014").Visible = False
die pivot hat 6wochen mit heute() formel in den stammdaten. jedentag kommt ein neuer dazu und einer fällt hinten raus. das makro müsste sich auch daran anpassen.
so in etwa:
zweites problem ist .PivotItems("Tabellenblatt Daten F3").Visible = False

Sub Makro1()
Sheets("Anzeige").Select
ActiveSheet.ChartObjects("Diagramm 1").Activate
If ActiveSheet.FilterMode Then ActiveSheet.ClearAllFilters
With ActiveSheet.PivotTables("PivotTable9").PivotFields("KST")
.PivotItems("22790").Visible = False
.PivotItems("24520").Visible = False
.PivotItems("24530").Visible = False
.PivotItems("24540").Visible = False
.PivotItems("24580").Visible = False
End With
ActiveSheet.ChartObjects("Diagramm 1").Activate
With ActiveSheet.PivotTables("PivotTable9").PivotFields("Datum")
.PivotItems("Dienstag, 10. Juni 2014").Visible = False
.PivotItems("Mittwoch, 11. Juni 2014").Visible = False
.PivotItems("Donnerstag, 12. Juni 2014").Visible = False
.PivotItems("Freitag, 13. Juni 2014").Visible = False
.PivotItems("Montag, 16. Juni 2014").Visible = False
.PivotItems("Dienstag, 17. Juni 2014").Visible = False
.PivotItems("Mittwoch, 18. Juni 2014").Visible = False
.PivotItems("Donnerstag, 19. Juni 2014").Visible = False
.PivotItems("Freitag, 20. Juni 2014").Visible = False
.PivotItems("Montag, 23. Juni 2014").Visible = False
.PivotItems("Dienstag, 24. Juni 2014").Visible = False
.PivotItems("Mittwoch, 25. Juni 2014").Visible = False
.PivotItems("Donnerstag, 26. Juni 2014").Visible = False
.PivotItems("Freitag, 27. Juni 2014").Visible = False
.PivotItems("Montag, 30. Juni 2014").Visible = False
.PivotItems("Dienstag, 1. Juli 2014").Visible = False
.PivotItems("Mittwoch, 2. Juli 2014").Visible = False
.PivotItems("Donnerstag, 3. Juli 2014").Visible = False
.PivotItems("Freitag, 4. Juli 2014").Visible = False
.PivotItems("Montag, 7. Juli 2014").Visible = False
.PivotItems("Dienstag, 8. Juli 2014").Visible = False
.PivotItems("Mittwoch, 9. Juli 2014").Visible = False
.PivotItems("Donnerstag, 10. Juli 2014").Visible = False
.PivotItems("Freitag, 11. Juli 2014").Visible = False
.PivotItems("Montag, 14. Juli 2014").Visible = False
.PivotItems("Dienstag, 15. Juli 2014").Visible = False
.PivotItems("Mittwoch, 16. Juli 2014").Visible = False
.PivotItems("Donnerstag, 17. Juli 2014").Visible = False
.PivotItems("Freitag, 18. Juli 2014").Visible = False
End With
End Sub

danke fürs durchlesen

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Pivot chart via makro sortieren
09.06.2014 19:24:30
Spenski
hier mal die datei dazu . blattnahmen haben sich bisschen geändert aber denke so wirds verständlicher.
naja die beiden oben genannten probleme konnt ich leider trotzdem noch nicht lösen.
https://www.herber.de/bbs/user/91047.xlsm
gruss

AW: Pivot chart via makro sortieren
10.06.2014 13:27:56
fcs
Hallo Spenski,
etwas in die folgende Richtung sollte dir weiterhelfen.
Gruß
Franz
'Erstellt/getestet unter Excel 2010
Sub CommandButton1_Click()
' PivotTable9 aktualisieren
Dim pvTab As PivotTable, wksAnz As Worksheet, wksData As Worksheet
Set wksAnz = Worksheets("Anzeige")
Set wksData = Worksheets("Daten")
Set pvTab = wksAnz.PivotTables("PivotTable9")
Application.ScreenUpdating = False
wksAnz.Unprotect
With pvTab
.ClearAllFilters
With .PivotFields("KST")
.PivotFilters.Add Type:=xlCaptionEquals, Value1:=wksAnz.Range("B33").Value
End With
With .PivotFields("Datum")
.PivotFilters.Add Type:=xlSpecificDate, _
Value1:=CLng(Application.WorksheetFunction.Min(wksAnz.Range("B35")))
'        .PivotFilters.Add Type:=xlSpecificDate, _
Value1:=CLng(Application.WorksheetFunction.Min(wksData.Range("F:F")))
'        .PivotFilters.Add Type:=xlDateBetween, _
Value1:=CLng(Application.WorksheetFunction.Min(wksData.Range("F:F"))), _
Value2:=CLng(Application.WorksheetFunction.Max(wksData.Range("F:F")))
End With
End With
wksAnz.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Application.ScreenUpdating = True
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige