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-ID: 230496

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

Ausgedruckt am: 22.11.2024 um 21:11 Uhr

colinardo
colinardo 20.02.2014 aktualisiert um 10:49:16 Uhr
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
EricAG3
EricAG3 20.02.2014 um 10:58:05 Uhr
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.
colinardo
colinardo 20.02.2014 aktualisiert um 11:00:33 Uhr
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
colinardo
colinardo 20.02.2014 aktualisiert um 11:02:44 Uhr
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.
EricAG3
EricAG3 20.02.2014 um 11:21:27 Uhr
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..
colinardo
colinardo 20.02.2014 aktualisiert um 11:29:42 Uhr
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"
EricAG3
EricAG3 20.02.2014 um 11:38:29 Uhr
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.