【发布时间】:2013-04-15 14:08:56
【问题描述】:
背景:我有 2 张 excel 表格:
- 包含数据透视表和宏“刷新”
- 来自 SQL 服务器的数据
宏包含用于自动刷新数据和更新数据透视表的 VBA 代码。数据每晚更新。以下是VBA代码:
Sub Refresh()
ActiveWorkBook.RefreshAll
End Sub
问题:
当我第一次运行我的宏时,执行需要 5 分钟,我的 数据透视表未使用新数据更新。
当我第二次运行它时,它执行得很好。
我希望我的宏在第一次运行时完美执行。
非常感谢任何帮助。
注意:这是我的第一篇文章,所以请容忍我的编辑。
【问题讨论】:
-
这可能是因为第一次从数据源刷新数据集。之后,它被缓存在pivotcaches中,因此除非源数据发生变化,否则后续执行速度会快得多!
-
你能给我解决这个问题的任何想法吗
-
** @Philip :** 你是对的。在第一次单击时,它会刷新来自
sql server的数据集,然后在第二次单击时刷新数据透视缓存。
标签: sql-server-2008 excel pivot-table vba