У меня есть отчет, содержащий несколько сводных таблиц.
Я нашел макрос ниже, который выбирает количество требуемых недель (в моем случае мне всегда нужно выбирать последние 3 недели) в одной из сводных таблиц. Он выбирает последние 3 значения, однако проблема в том, что он также выбирает пустое поле.
Код выглядит следующим образом:
Sub ShowLastXWeeks()
Dim pi As PivotItem
Dim lLoop As Long
Dim pt As PivotTable
Dim lCount As Long
Dim lWeeks As Long
On Error Resume Next
lWeeks = 3
If lWeeks = 0 Then Exit Sub
Application.ScreenUpdating = False
Set pt = ActiveSheet.PivotTables("PivotTable1")
For Each pi In pt.PivotFields("Week").PivotItems
pi.Visible = False
Next pi
With pt.PivotFields("Week")
For lLoop = .PivotItems.Count To 1 Step -1
.PivotItems(lLoop).Visible = True
lCount = lCount + 1
If lCount = lWeeks Then Exit For
Next lLoop
End With
On Error GoTo 0
Application.ScreenUpdating = True
End Sub
Моя сводная таблица выглядит следующим образом:
Я пытался избавиться от «пустого» значения, но безуспешно.
Как я могу изменить вышеуказанный скрипт, чтобы пропустить пустое поле и выбрать только последние 3 недели?
Заранее спасибо.