![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
自动更新 部分 数据透视表的VBA代码
我有好几个数据透视表,且数据源都不同,我录制了刷新数据透视表的宏,可以同时刷新多个数据透视表,但是有时候只需要更新部分数据透视表,怎么实现呢?根据是:数据源为空,数据透视...
我有好几个数据透视表,且数据源都不同,我录制了刷新数据透视表的宏,可以同时刷新多个数据透视表,但是有时候只需要更新部分数据透视表,怎么实现呢?根据是:数据源为空,数据透视表就不更新,有数据源,就更新数据透视表,这样VBA应该怎么写呢?哪位高手指点一下,非常感谢
展开
1个回答
展开全部
透视表的数据本身就是不可以更改的,只能通过更改数据源才能得以更新,还要为它设置密码不是多此一举吗?只要解锁工作表1就行了。
以下代码功放在表4(数据透视表所在表)
Private Sub Worksheet_Activate()'用这个事件效率更高,当表4激活时刷新数据透视表
sheets(1).Unprotect Password:="1234"
sheets(4).PivotTables("数据透视表1").PivotCache.Refresh
sheets(1).protect Password:="1234"
End Sub
以下代码功放在表4(数据透视表所在表)
Private Sub Worksheet_Activate()'用这个事件效率更高,当表4激活时刷新数据透视表
sheets(1).Unprotect Password:="1234"
sheets(4).PivotTables("数据透视表1").PivotCache.Refresh
sheets(1).protect Password:="1234"
End Sub
追问
谢谢你的回答,但是我没有要设置密码啊?我只是要实现用按钮控制,只更新有数据源的数据透视表,没有数据源的就不更新数据透视表,我是多个数据透视表都在一个sheet里,用宏统一控制刷新,但是这个只能实现所有数据源都存在的情况下,刷新全部数据透视表,我想问问能不能只刷新有数据源的,有些表我不需要这次更新,我就不更新呢?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询