更新Excel数据透视表字段

时间:2018-02-14 19:05:25

标签: excel vba excel-vba

我每天使用包含许多不同工作表和数据透视表的工作簿编译早期报告。到目前为止,我已经能够在一定程度上自动化数据检索过程,并且可以非常简单地获取数据透视表数据。我现在要做的是让数据透视表字段过滤器自动更改,以包括今天(包括今天)之前30天的数据条目。我已经看到一些让你只选择一个日期的东西,但我需要选择一个范围。我试过使用一个相对记录的宏,但它给了我这个

Sub Update()

    Sheets("Doorline Month").Select
    ActiveSheet.ChartObjects("Chart 1").Activate
    ActiveSheet.PivotTables(-1).PivotFields("Date").CurrentPage = "(All)"
    With ActiveChart.PivotLayout.PivotTable.PivotFields("Date")
        .PivotItems("1/14/2018").Visible = False
        .PivotItems("2/15/2018").Visible = True
    End With
End Sub

我相信这只会取消选择1/14/2018并使2/15/18可见。我希望这段代码每天早上都能自动运行,所以如果我在2017年2月16日进入,它将取消选择1/15/2018并选择2/16/2018。我尝试用" ActiveCell"替换录制的宏中的日期。但无济于事。任何帮助是极大的赞赏。如果它有帮助,我的数据透视表的数据在表1中,日期特别在A列。不幸的是,每天的数据条目数不一致,所以我不知道这是否使事情变得复杂。

1 个答案:

答案 0 :(得分:0)

为什么不在数据库/原始数据中放置一个标记,每行标记1或0,具体取决于日期是否在您想要的范围内?然后,您可以在数据透视表的过滤器字段中保留选定的1或0,并且每次刷新时都会自动显示相关数据。

相关问题