Pivottabelle in Excel mit vba Filtern nach Monat

Hallo Zusammen.
Ich möchte gerne eine bestehende Pivottabelle durch ein Marko nach Datum filtern.
Dazu habe ich ein Makro aufgezeichnet. Funktioniert aber nicht. Warum?
Wie könnte das gehen?

Dim sdate, edate As Date
sdate = Range(„C2“).Value
edate = Range(„D2“).Value
ActiveSheet.PivotTables(„PivotTable1“).PivotFields(„Datum“).ClearAllFilters
ActiveSheet.PivotTables(„PivotTable1“).PivotFields(„Datum“).PivotFilters.Add _
Type:=xlDateBetween, Value1:=sdate, Value2:=edate

Viele Dank für jede Hilfe!

Hi,

sorry, falsche Baustelle.
Ich kann Dir nur was zu VBA im Zusammenhang mit Access sagen.
Außerdem habe ich bisher noch nie was mit Pivot - Tabellen gemacht :wink: (wozu brauch man die).

Gruß
Karsten

Hallo Bendaua,

ich arbeite noch mit Excel 2003, und dieses kennt die .PivotFilters.Add-Methode noch nicht. Insofern kann ich dir keine geprüfte Lösung anbieten.

Durch googlen bin ich auf folgende Seite gestoßen (leider auf Englisch):

http://www.excelguru.ca/blog/2009/03/23/screw-up-exc…

Vielleicht hilft es also, wenn du „Value1:=sdate“ durch „Value1:=CStr(sdate)“ ersetzt (für Value2 genauso)? Ich kann es, wie gesagt, nicht nachprüfen.

VG, BellHouse

Ich möchte gerne eine bestehende Pivottabelle durch ein Makro
nach Datum filtern.

Wie könnte das gehen?

[…]
ActiveSheet.PivotTables(„PivotTable1“).PivotFields(„Datum“).Piv
otFilters.Add _
Type:=xlDateBetween, Value1:=sdate, Value2:=edate

Hey

Sorry, hab ebenfalls keine Erfahrungen mit Pivot Tabellen.

Gruss und Viel Glück
Marc

Hey

Sorry, hab ebenfalls keine Erfahrungen mit Pivot Tabellen.

Gruss und Viel Glück
Marc.

Hallo!

Müßte eigentlich gehem, wenn es aufgezeichnet ist, aber leider ist die Auzeichnung auch nicht immer 100%-ig.
Ich weiß z.B., daß es mit Datumswerten, die ich aus Feldern abgreife, immer Probleme gibt. Aber wie ich jetzt das Datum umwandeln muß, müßte ich ausprobieren.

Nicht immer wird z.B. eoin Datum, welches als Datum dargestelllt wird, intern auch als Datum weiterverarbeitet. Die Hilfe zur Funtion gibt Dir Auskunft, in welcher Form dasd Datum erwartet wird. Dann kannst Du das vorhandene Datum mit einer Kovertierungsformel in das gewünschte format umwandeln. Und dann müßte es gehen.

Gruß
wbr

Was genau funktioniert denn nicht? ich kann es leider nicht genau nachvollziehen, da ich scheinbar eine andere Excel-Version habe und dort gibt es die von Dir benutzten Eigenschaften und Methoden für das PivotTable-Objekt nicht.
-> Kommt eine Fehlermeldung bei Ausführung des Makros?
-> Werden die Anweisungen nur nicht ausgeführt?

Ein paar Möglichkeiten vorweg:

  • Das Feld Datum im PivotTable ist nicht als Datum formatiert? Dann vergleichst Du möglicherweise den 01.01.2011 als Datum mit dem „01.01.2011“ als Text?
  • Die ClearAllFilters-Methode wird nicht ausgeführt, weil keine Filter gesetzt sind?
  • Du benutzt eine andere Excel-Version, als die, mit der das Makro aufgenommen wurde?

Hi Bendaua,

ich bin jetzt nicht der richtige Pivottabellen-Experte und weis auch nicht ob EXCEL 2010 im Bereich der Pivottables-Codes anders ist als EXCEL 2003.

Hallo Zusammen.
Ich möchte gerne eine bestehende Pivottabelle durch ein Marko
nach Datum filtern.
Dazu habe ich ein Makro aufgezeichnet. Funktioniert aber
nicht. Warum?
Wie könnte das gehen?

Dim sdate, edate As Date

DIM sDate As Date, eDate As Date müsste es heißen

sdate = Range(„C2“).Value
edate = Range(„D2“).Value
ActiveSheet.PivotTables(„PivotTable1“).PivotFields(„Datum“).Cle
arAllFilters
ActiveSheet.PivotTables(„PivotTable1“).PivotFields(„Datum“).Piv
otFilters.Add _
Type:=xlDateBetween, Value1:=sdate, Value2:=edate

Die Befehle ClearAllFilters und PivotFilters sind mir nicht bekannt.

Vielleicht reicht auch der folgende CODE

ActiveSheet.PivotTables(„PivotTable1“).PivotFields(„Datum“).AutoSort xlAscending, „Datum“

für deine Sortierung…

Gruß Andreas

„Funktioniert aber nicht“ äußert sich wie?

lg

BellHouse,

vielen Dank! Mit CStr(variable) klappt es! Ich denke es ist wiedermal diese ewig-verfluchte Datumsformat-Baustelle zwischen VBA und Excel, Amiland-Formatierung und der deutschen Schreibweise…

Vielen, vielen Dank auf jeden Fall!
Wenn dich mal ne Frage quält, her damit!

Viele Grüße,
Bendaua

Hi Puma,

Dim as Date hab ich auch gemacht, ging nicht. BellHouse hat CStr(variable) vorgeschlagen (also als String), das hat funktioniert.

Dennoch vielen Dank für deine Hilfe!

Bendaua

Sorry, kenne mich diesem Tabellentyp nicht aus

deine frage ist schon beantwortet, oder?

Sorry, kann leider nicht helfen.