好的,所以我试图让Excel VBA代码通过数据透视表,只展开最后一行字段中那些只有一个条目的条目。默认情况下,最后一行字段已折叠。
到目前为止我所拥有的:
Sub Test()
With ActiveSheet.PivotTables("OBJSUMMARYPT")
Dim pvtitem4, pvtitem5 As PivotItem
For Each pvtitem4 In .RowFields("OBJECT CODE GROUPING").PivotItems
For Each pvtitem5 In .RowFields("CONTRACT & CONTRACT TITLE").PivotItems
If pvtitem5.Name <> "NON-CONTRACT" And pvtitem4.RecordCount > 0 And pvtitem5.RecordCount > 0 Then
.PivotFields("OBJECT CODE GROUPING").PivotItems(pvtitem4.Name).ShowDetail = True
End If
Next pvtitem5
Next pvtitem4
End With
End Sub
这扩展了太多,因为如果pvtitem4中有任何pvtitem5s有记录,它就不会交叉引用,而且我没有弄清楚这样做的语法。
我认识到将会显示未列为“非合同”的单个条目,我不会对此提出异议;这很好。我希望得到的误报少于我现在得到的误报。