应用数据透视表筛选器时出现运行时错误1004

时间:2019-03-20 19:29:09

标签: excel vba

我收到运行时错误'1004':每当执行这段代码时,应用程序定义的错误或对象定义的错误:

Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)

Dim wb As Workbook
Dim ws As Worksheet

Set wb = ThisWorkbook
Set ws = wb.Sheets("Dashboard")
Application.ScreenUpdating = False

If wb.SlicerCaches("Slicer_Inspection_Status").SlicerItems("In Queue").Selected = True Then
    ws.PivotTables("IN_QUEUE_PIVOT").PivotFields("LAST UPDATE").ClearAllFilters
ElseIf wb.SlicerCaches("Slicer_Inspection_Status").SlicerItems("In Queue").Selected = False Then
    ws.PivotTables("IN_QUEUE_PIVOT").PivotFields("LAST UPDATE").ClearAllFilters
    ws.PivotTables("IN_QUEUE_PIVOT").PivotFields("LAST UPDATE").PivotFilters.Add2 Type:=xlDateToday
End If

Application.ScreenUpdating = True
End Sub

这是错误行:

ws.PivotTables("IN_QUEUE_PIVOT").PivotFields("LAST UPDATE").PivotFilters.Add2 Type:=xlDateToday

奇怪的是,即使弹出错误,过滤器仍然适用,并且如果我输入“ On Error Resume Next”语句,则一切正常。

“最后一次更新”位于数据透视表的“行”部分,而数据透视表则完全由行组成,没有过滤器,列或值。

编辑:我正在Windows 10上运行Excel 2016。

0 个答案:

没有答案