ericag3
Goto Top

Excel 2013 PowerPivot - Tagesdatum aktualisieren

Hallo,

folgendes Problem:
Ich greife auf eine Tabelle mit Zeitstempeln zu. Aus einer gebastelten PivotTabelle erstelle ich ein Diagramm das die Anzahl der Buchungen an einem Tag abbildet. Hierzu setze ich einen Filter auf das Feld mit dem Zeitstempel der Buchung. Wie kann ich den Filter konfigurieren, so dass er sich jeden Tag auf das aktuelle Tagesdatum aktualisiert? Derzeit steht das Datum statisch drin.

Vielen Dank im Voraus.


Eric

Content-Key: 230496

Url: https://administrator.de/contentid/230496

Printed on: April 20, 2024 at 04:04 o'clock

Member: colinardo
colinardo Feb 20, 2014 updated at 09:49:16 (UTC)
Goto Top
Hallo Eric,
das könntest du mit einem Makro machen. Schau dir dazu mal folgendes Demo-Sheet an.
Sub UpdatePivotTable()
    Dim ws As Worksheet, pt As PivotTable
    Set ws = Worksheets(1)
    Set pt = ws.PivotTables("PivotTable1")  
    pt.PivotFields("Datum").ClearAllFilters  
    pt.PivotFields("Datum").PivotFilters.Add Type:=xlDateToday  
    pt.Update
End Sub
Für das Beispiel ist das Makro an einen Button geknüpft , aber das ganze lässt sich dann auch an das Open-Event des Worksheets binden so dass die Pivot-Tabelle schon nach dem Öffnen aktuell gefiltert ist.

Grüße Uwe
Member: EricAG3
EricAG3 Feb 20, 2014 at 09:58:05 (UTC)
Goto Top
Das ist genau passend.
Welche Parameter sind zu ändern?

"PivotTable1" -> Name meines Pivot Tables?
"Datum" -> Name des Felds in dem der Zeitstempel steht?

Sonst noch etwas?
Schaue mir jetzt mal an wie und wo ich das Makro einbinden kann/muss.

Vielen Dank schon mal.
Member: colinardo
colinardo Feb 20, 2014 updated at 10:00:33 (UTC)
Goto Top
Welche Parameter sind zu ändern?
"PivotTable1" -> Name meines Pivot Tables?
Genau
"Datum" -> Name des Felds in dem der Zeitstempel steht?
Exakt
Sonst noch etwas?
noch das Worksheet in dem sich die PT befindet
 Set ws = Worksheets(1)
im Beispiel das erste Worksheet

Grüße Uwe
Member: colinardo
colinardo Feb 20, 2014 updated at 10:02:44 (UTC)
Goto Top
damit das ganze beim Öffnen des Sheets startet einfach folgenden Code nehmen:
Sub UpdatePivotTable()
    Dim ws As Worksheet, pt As PivotTable
    Set ws = Worksheets(1)
    Set pt = ws.PivotTables("PivotTable1")  
    pt.PivotFields("Datum").ClearAllFilters  
    pt.PivotFields("Datum").PivotFilters.Add Type:=xlDateToday  
    pt.Update
End Sub

Private Sub Workbook_Open()
    UpdatePivotTable
End Sub
das ganze muss im Code-Abschnitt des Workbooks stehen.
Member: EricAG3
EricAG3 Feb 20, 2014 at 10:21:27 (UTC)
Goto Top
[code]Sub UpdatePivotTable()
Dim ws As Worksheet, pt As PivotTable
Set ws = Worksheets(1)
Set pt = ws.PivotTables("Schere_B")
pt.PivotFields("Soll am akt_ Messpunkt").ClearAllFilters
pt.PivotFields("Soll am akt_ Messpunkt").PivotFilters.Add Type:=xlDateToday
pt.Update
End Sub[/code]

Dieses Makro ist auf einen Button gelegt. Nach Betätigung des Buttons passiert nichts und ich erhalte keine Fehlermeldung.
Die PT liegt auf Tabellenblatt 1..
Member: colinardo
colinardo Feb 20, 2014 updated at 10:29:42 (UTC)
Goto Top
vermutlich hast du die Makro-Einstellungen im Sicherheitscenter von Excel noch nicht runtergesetzt !
Datei > Optionen > Sicherheitscenter > Einstellungen für das Sicherheitscenter > Einstellungen für Makros > "Alle Makros aktivieren"
Member: EricAG3
EricAG3 Feb 20, 2014 at 10:38:29 (UTC)
Goto Top
Stimmt, hatte ich vergessen.
Jetzt führt er das Makro aus und gibt eine Fehlermeldung mit Fehlertext "400" zurück. Werde nocheinmals die Parameter überprüfen.