Hallo in die Runde,
bin über Google auf diese Website gestoßen und hoffe, dass Ihr mir weiterhelfen könnt. Habe zwei Mal das gleiche Problem vom Prinzip her, die Lösungen werden aber vermutlich unterschiedlich aussehen nehme ich mal an.
1.) Ich habe folgenden Code:
Dim WS3 As Worksheet
Set WS3 = WB3.Sheets("Sheet1")
Dim PVT3 As PivotTable
Set PVT3 = WS3.PivotTables("Dataset")
Dim PVTF3 As PivotField
Set PVTF3 = PVT3.PivotFields("[Date].[Fiscal Period (Num)].[Fiscal Period (Num)]")
PVTF3.VisibleItemsList = Array( _
"[Date].[Fiscal Period (Num)].&[1]", "[Date].[Fiscal Period (Num)].&[2]", _
"[Date].[Fiscal Period (Num)].&[3]", "[Date].[Fiscal Period (Num)].&[4]", _
"[Date].[Fiscal Period (Num)].&[5]", "[Date].[Fiscal Period (Num)].&[6]", _
"[Date].[Fiscal Period (Num)].&[7]", "[Date].[Fiscal Period (Num)].&[8]", _
"[Date].[Fiscal Period (Num)].&[9]", "[Date].[Fiscal Period (Num)].&[10]", _
"[Date].[Fiscal Period (Num)].&[11]", "[Date].[Fiscal Period (Num)].&[12]")
WB3.Save
WB3.Close
Im Filter der Pivot Tabelle sollen die Monate 1 bis 12 ausgewählt werden. Es funktioniert auch alles, jedoch sah mein Wunsch so aus, dass ich nur ein Mal am Anfang den Endmonat ändern muss und nichts weiter. Also mein Wunsch wäre es am Anfang des Codes eine Variable, z.B. Endmonat = 5, festzulegen und dann werden die Monate 1-5 im Filter der Pivot ausgewählt. Sicherlich muss ich hier ja mit einer Schleife arbeiten, meine Versuche führten aber nur zu unzähligen Fehlermeldungen.
2.)
Gleiches Spiel wie eben, nur sind die Monate hier wie folgt benannt: "202207", "202208", ..., "202212", "202301",...., "202306", sprich Jahr und dann Monat in umgekehrter Reihenfolge. Da Juli Monat 1 und Juni Monat 12 entspricht wäre meine Frage hier, wie ich eine Mehrauswahl treffen kann. Wenn ich also sage Endmonat ist 202305, dann sollen mir alle Monate von Juli 2022 bis einschließlich Mai 2023 ausgewählt werden.
Hoffe wirklich Ihr könnt mir helfen, mir gehen so langsam die Ideen aus.
Vielen lieben Dank bereits allen im Voraus.
Viele Grüße
Dom