下面的代码的目标是循环遍历数据透视表中的项目,如果某个项目符合条件,则将单元格6列中的日期打印到不在数据透视表中的区域。枢轴项目对象似乎不支持偏移量。是否有另一种方法可以抵消数据透视项?
With ThisWorkbook.Worksheets("Dashboard")
Set pvt = Worksheets("Dashboard").PivotTables("ProcessPivot")
Set Ptfield = pvt.PivotFields("HelperColumn")
For Each pi In Ptfield.PivotItems
If pi = NameSID And Eventdate2 <> "12:00:00 AM" Then
pi.Offset(0, 6) = Eventdate2
ElseIf pi = NameSID Then
pi.Offset(0, 6) = "Not Reviewed"
End If
Next pi
End With
答案 0 :(得分:1)
类似以下的内容将使用数据透视表中的数据范围。请根据您的需要进行修改。
Sub Tester()
Dim pvt As PivotTable
Dim rng As Range
With ThisWorkbook.Worksheets("Dashboard")
Set pvt = Worksheets("Dashboard").PivotTables("ProcessPivot")
'Assumes we are checking column 2
Set rng = Intersect(pvt.DataBodyRange, Worksheets("Dashboard").Columns(2))
For Each cel In rng
cel.Offset(, 6) = "enter something"
Next cel
End With
End Sub