如果您正在处理销售数据,则该数据每天都会更新。要使用数据透视表跟踪数据中输入的最新日期的完整销售额。在本文中,我们将学习如何使用数据透视表通过宏在数据库中选择最新日期。

以下是我们拥有的数据快照:

image 1

要自动查找新的日期和销售额,我们需要进行透视设置使用快捷键ALT + N + V

image 2

我们需要执行以下步骤:

单击“开发人员”选项卡。从“代码”组中,选择“ Visual Basic”

image 3

  • 在工作表模块中输入以下代码

Sub LatestDatePivot()

Dim pfiPivFldItem As PivotItem

Dim dtmDate As Date

With Worksheets(“Sheet1”).PivotTables(1)

.PivotCache.Refresh

.ClearAllFilters

With .RowRange

dtmDate = Evaluate(“Max(IF(ISNUMBER(“ & .Address(0, 0) & “),” & .Address(0, 0) & “,))”)

End With

For Each pfiPivFldItem In .PivotFields(“Dates”).PivotItems

If pfiPivFldItem.Value = “(blank)” Then

pfiPivFldItem.Visible = False

Else

pfiPivFldItem.Visible = (Cdate(pfiPivFldItem.Value) = CLng(dtmDate))

End If

Next pfiPivFldItem

End With

End Sub

image 4

复制代码后,您需要使用ALT + F8 *运行宏并选择宏。

  • 或者您可以插入形状并分配宏;我们将获得最新日期

image 5

  • 测试代码;如果我们更改现有日期;我们将相应地获得输出

image 6

要动态地运行此代码,您需要做的就是遵循以下步骤:

按CTRL + F3打开“名称管理器”,在“引用”框中,将公式输入为

。 === * = OFFSET(Sheet1!$ A $ 1 ,,, COUNTA(Sheet1!$ A:$ A),2)

image 7

单击确定按钮,现在我们准备在数据透视表中使用此命名范围。单击数据透视表。从分析功能区>单击更改数据源

image 8

按F3快捷键启动现有的粘贴名称;选择LatestDate单击两次OK按钮