我在Excel 2007中有一个ppivot表,它在一个日期字段上有一个标签过滤器,用于“大于或等于”特定日期。我有一个宏来更新数据透视表的源并刷新它。刷新后,表格显示为空,我必须转到过滤器,然后单击“确定”(仍在此处定义过滤器值)以查看数据透视表中的数据。为什么在刷新后不应用过滤器?
这是我的代码段:
Set c = ThisWorkbook.Connections.Item("Connection1")
c.OLEDBConnection.CommandText = "exec DB1.dbo.sp_GetnewData"
c.Refres
For Each pivot In ThisWorkbook.Worksheets("Sheet1").PivotTables
pivot.RefreshTable
Next
答案 0 :(得分:0)
我遇到了同样的问题并找到了解决方法 - 不要通过单击全部刷新来刷新整个工作簿,而只刷新数据连接 - 这样您的数据将是最新的,并且不会删除您的过滤。
希望这有帮助
Mojmir
答案 1 :(得分:0)
要保持过滤器选择目标表并打开数据标签。 点击" Connections"中的属性;部分。
选中保留列排序/过滤器/布局