excel VBA数据刷新的代码问题

excel VBA数据刷新的代码问题,第1张

上面清除数据 是 清除的 Range("A7:W60000,B6,D6,F6,B2:D2,F2:H2"), 这里面不包含 U6这个单元格

循环条件:Do Until Cells(i, "U") = Empty

第一次 i=6,单元格 U6 我们不知道是什么内容,如果不为空,则继续运行——第二次当i=7时,数据是空的,那么循环跳出,不再运行。

你是想表达 只要 Cells(i, "U") 为空就继续运行么? 那么 要改为 Do While 循环

但这样,你要保证U列下面的单元格中不是全空的,不然 程序将对所有行进行处理,直到行数达到最大,这有可能出错 或 造成程序假死。

更新透视表数据源 和 刷新~

With ActiveSheet.PivotTables("Table1")

            .ChangePivotCache ActiveWorkbook.PivotCaches.Create _

            (SourceType:=xlDatabase, SourceData:=ActiveWorkbook.Sheets(1).Range("A1").CurrentRegion)

            .PivotCache.Refresh    '该句为刷新

End With

这个似乎无法直接判断

用 Selection.QueryTable.Refresh BackgroundQuery:=False 禁止后台异步刷新是否有用?

如果不行,好像只能用循环去判断一个每次刷新后确定会改变的值


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10002593.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存