用单元格值刷新数据透视表

时间:2018-11-27 12:00:10

标签: vba date pivot

我有以下代码,

'latest date effort
Dim DataDataData As Long
DataDataData = Application.WorksheetFunction.CountA(ThisWorkbook.Sheets("Data").Range("A1:A1048576"))
Dim DataDataData2 As String
DataDataData2 = Sheets("Data").Range("A" & DataDataData)        

'refresh pivot#1
Sheets("Data").Select
ActiveSheet.PivotTables("PivotTable2").PivotCache.Refresh
ActiveSheet.PivotTables("PivotTable2").PivotFields("Date").AutoSort xlAscending _
    , "Date"

'refresh pivot#2
ActiveSheet.PivotTables("PivotTable3").PivotCache.Refresh
ActiveSheet.PivotTables("PivotTable3").PivotFields("Date").ClearAllFilters
ActiveSheet.PivotTables("PivotTable3").PivotFields("Date").CurrentPage = _
    Sheets("Data").Range("A" & DataDataData)

刷新枢纽#1可以正常工作,并且可以完成我想要的操作,但是第二个错误是由应用程序定义的错误或对象定义的错误。

我希望它用数据列表的最新单元格刷新数据透视表,这将是数据列表的最新日期。

任何帮助将不胜感激。

谢谢

1 个答案:

答案 0 :(得分:0)

将您的日期转换为字符串:

id  key_a  key_b  key_c
1   9      8      7
2   6      5      4
3   3      2      1