Сводная таблица - применить фильтр даты к pivotField.currentPage - PullRequest
0 голосов
/ 06 августа 2020

Я пытаюсь применить фильтр String, Date and Time к 3 полям страницы поверх сводной таблицы. Строковый фильтр применяется успешно, но фильтры даты и времени дают мне «ошибку, определяемую приложением или объектом».

Это код, который я использую:

Private Sub filterPivot_Rebid(budgetFilter, dateFilter, timeFilter)
    On Error GoTo endError
    
    Dim PT As PivotTable, PF As PivotField
    Set PT = WS_Deliverables_Rebid.PivotTables("PivRebid")
    
    ThisWorkbook.RefreshAll
    
    With PT
        Set PF = .PivotFields("Budget Type")
        PF.ClearAllFilters
        PF.CurrentPage = budgetFilter 'Value is BID 03 and it applies succesfully
        
        Set PF = .PivotFields("Date")
        PF.ClearAllFilters
        PF.CurrentPage = dateFilter   'Value is 06-Aug-2020, and it returns the error. I tried cDate, and format to m/d/yyyy, same result
        
        Set PF = .PivotFields("Time")
        PF.ClearAllFilters
        PF.CurrentPage = timeFilter    'Value is 13:01:58, and it returns the error

'THIS IS THE RECORDED VERSION
''            ActiveSheet.PivotTables("PivRebid").PivotFields("Date").CurrentPage = _
''        "8/6/2020"
''    ActiveSheet.PivotTables("PivRebid").PivotFields("Time").ClearAllFilters
''    ActiveSheet.PivotTables("PivRebid").PivotFields("Time").CurrentPage = _
''        "12:28:28 PM"
    End With
    'PT.PivotCache.Refresh
    
done:
Exit Sub

endError:
    RaiseError Err, "filterPivot_Rebid (" & budgetFilter & ", " & dateFilter & ", " & timeFilter & ")", Erl
End Sub

Как можно Я правильно применяю поля страницы?

...