设置VBA pivotfields.currentpage时出错

我试图做一个macros,将自动调整基于用户input的几个数据透视表的filter,但是,如果用户放入的东西是不可用的代码产生一个错误,当试图应用filter。

无论如何检查哪些filter可供select?

例如:一个数据透视表有三个可用的filter(年份,月份,types[投诉,赞美,两者]),但如果在一个月内没有任何投诉,那么是错误的。

码:

With PTable .PivotFields("Year").CurrentPage = Y .PivotFields("Month").CurrentPage = M .PivotFields("Type").CurrentPage = T 'Error line if T isn't valid End With 

继续我的评论,试试这个

 With PTable .PivotFields("Year").CurrentPage = Y .PivotFields("Month").CurrentPage = M On Error Resume Next .PivotFields("Type").CurrentPage = T 'Error line if T isn't valid If Err.Number <> 0 Then Msgbox "Filter Didn't get applied" End If On Error GoTo 0 End With