使用 VBA 使用新日期更新数据透视表

问题描述 投票:0回答:1

我正在尝试构建一个宏,它将根据给定单元格中写入的日期用新日期刷新数据透视表。

例如,如果在单元格 A5 中我有 11 月 25 日,我希望数据透视表刷新并仅显示 11 月 25 日的结果,如果我更改日期,我希望宏使用更新的日期。

基本上我需要构建一个宏,根据 A5 中输入的日期来刷新日期字段,如下图所示 在此输入图片描述

到目前为止,我设法创建一个宏,用新日期刷新数据透视表,但我不确定如何将手动输入的日期更改为单元格中的日期。

Sub Refresh_new_date()
'
' Refresh_new_date Macro
'

'
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Date")
        .PivotItems("11/17/2024").Visible = True
        .PivotItems("11/18/2024").Visible = False
    End With
End Sub
excel vba macros pivot-table
1个回答
0
投票

您需要处理Worksheet_Change事件:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$A$5" Then
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Date")
        .PivotItems([A5]).Visible = True
        .PivotItems("11/18/2024").Visible = False
    End With
  End If
End Sub

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.