Если вы работаете с данными о продажах, которые постоянно обновляются. Для отслеживания полных продаж на последнюю дату, введенную в данные с помощью сводной таблицы. В этой статье мы узнаем, как использовать сводную таблицу для выбора самой новой даты в базе данных с помощью макросов.

Ниже приведен снимок имеющихся данных:

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, чтобы запустить существующее имя вставки; выберите «Последняя дата». Дважды нажмите кнопку «ОК»