Excel - Makro von bis
Hallo,
ich habe im Netz ein Makro zum Filtern von Pivottabellen gefunden. Leider hab ich fast keine Ahnung was VBA angeht.
Ich möchte kann jetzt einzelne Monate selektieren:
Call PivotFilter("MM", Array("8", "9"))
Wie verändere ich den Filter um den Bereich 4 bis 8 zu selektieren?
Danke!!!!
Antwort schreiben
Antwort 1 von coros vom 09.09.2021, 11:09 Options
Hallo,
ganz spontan, ohne das probiert zu haben würde ich sagen
Call PivotFilter("MM", Array("4", "5", "6", "7", "8"))
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von detommy vom 09.09.2021, 11:13 Options
Antwort 3 von coros vom 09.09.2021, 11:18 Options
Hallo,
sorry, verstehe jetzt Deine AW2 nicht. Ist das jetzt eine neue Frage von Dir oder nur eine Erläuterung?
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 4 von detommy vom 09.09.2021, 11:22 Options
Nein, das ist die Erläuterung. Hab mich unpassend (schlecht, undeutlich etc.) ausgedrückt.
Ich möchte halt ein Bereich selektieren und hab keine Ahnung wie...
Also halt von 4 bis 8 oder 2 bis 31 usw...
Antwort 5 von coros vom 09.09.2021, 11:23 Options
Hallo,
Du drückst Dich schon wieder undeutlich aus. Ist Deine Frage nun beantwortet oder nicht?
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 6 von detommy vom 09.09.2021, 11:28 Options
Nein, ist sie leider nicht.
Ich möchte die Zahlen nicht einzeln eingeben sondern einen Bereich.
Also die Zahlen von... bis...
Call PivotFilter("MM", Array(5 bis 31))
geht das?
Danke für deine Geduld :)
Antwort 7 von coros vom 09.09.2021, 11:34 Options
Hallo,
soweit ich weiß, musst Du dass in einzelnen Zahlen wie in AW1 beschreiben eintragen. Also
Call PivotFilter("MM", Array("5", "6", "7",........... "30", "31"))
100% sicher bin ich mir allerdings nicht, da ich nicht mit Pivot-Tabellen arbeite.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 8 von detommy vom 09.09.2021, 11:37 Options
Na gut. Dann muss ich das wohl so tun. Vielen Dank für deine Mühe.
Antwort 9 von coros vom 09.09.2021, 11:45 Options
Hallo,
was Du versuchen könntest, ohne jetzt zu wissen, ob das bei Pivot so auch funktioniert, wären nachfolgenden Zeilen. Diese schreiben Dir die Zahlen 5 bis 31 hochgezählt durch eine Schleife in eine Variable. Diesen Variablenwert übergibst Du dann mit der Split-Anweisung an die Filteranweisung.
Ich habe hier jetzt keine Pivottabelle um das zu testen. Aber wenn man anstelle der Pivottabellen z.B. über die VBA-Codezeilen Tabellenblätter auswählen läßt, funktionierts.
Dim intSheet As Integer
Dim strArray As String
For intSheet = 5 To 31
strArray = strArray & "," & intSheet
Next
strArray = "" & Mid(strArray, 2, Len(strArray)) & ""
Call PivotFilter("MM", Split(strArray, ","))
Eventuell hilft Dir das ja weiter.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.