我有一个带有2个报告过滤器的数据透视表,我将它们分别设置为“Ashley”和112。数据表有两个但不在同一行,因此数据透视表应返回空白或0表示我想要检索的数据的总和。
如果我按上述方式设置这些报告过滤器一切顺利,但如果我在vba excel崩溃中这样做。
这是我的代码
.PivotTables( “TtlGinShiftDT”)。透视字段( “晶晶”)。ClearAllFilters .PivotTables(“TtlGinShiftDT”)。PivotFields(“Gin”)。CurrentPage = CStr(.Cells(NewPTData + 1,3)) .PivotTables( “TtlGinShiftDT”)。透视字段( “移位”)。ClearAllFilters .PivotTables(“TtlGinShiftDT”)。PivotFields(“Shift”)。CurrentPage = CStr(.Cells(NewPTData + 1,1))
大多数情况下,2个过滤器会有一些有效的数据,但偶尔也没有,因此它一直运行良好,直到今天。
作为一种解决方法,我在代码中第4行之前添加了if语句,该代码引用了工作表上的countifs公式(使用过滤器值)。
这让我感动,但似乎不应该这样。我做错了什么
C-H 办公室2010