用VBA批量刷新Power Query查询 | 留言赠书第2波名单公布

2021-08-31 10:21:55 浏览数 (1)

- 问题 -

Excel里面怎么用VBA控制Power Query查询的批量刷新?

比如,根据查询的名称特征控制部分查询一起刷新,即纪要自动刷新多个,又不是全部刷新。

- 解答 -

我们知道,通过VBA刷新查询,最简单的是通过刷新查询的连接。

所以,如果能获得所有查询的连接名称,就可以通过连接名称进行规则化批量控制。

实际上,在VBA中要获得所有连接名称很简单,遍历工作簿的Connections对象即可,唯一有点特别的是,定义变量时,要用WorkbookConnection,而循环时遍历的对象是Connections,具体见代码(代码中并未根据连接名称做特别控制,大家按自己需要加判断条件即可):

代码语言:javascript复制
Sub refresh_queries()
    Dim q As WorkbookConnection
    For Each q In ThisWorkbook.Connections
        ThisWorkbook.Connections(q.Name).Refresh
    Next
End Sub

0 人点赞