Смещение от основного элемента - PullRequest
0 голосов
/ 07 декабря 2018

Цель приведенного ниже кода состоит в том, чтобы циклически проходить по элементам в сводной таблице, и, если элемент удовлетворяет условиям, вывести дату в столбцах ячейки 6 в область, которой нет в сводной таблице.Объект элемента Pivot не поддерживает смещение.Есть ли другой способ смещения от основного элемента?

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

1 Ответ

0 голосов
/ 07 декабря 2018

Что-то вроде следующего будет использовать диапазон данных в сводной таблице.Пожалуйста, измените в соответствии с вашими потребностями.

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
...