用VBA批量刷新Power Query查询

- 问题 -

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

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

- 解答 -

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

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

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

Sub refresh_queries() Dim q As WorkbookConnection    For Each q In ThisWorkbook.Connections        ThisWorkbook.Connections(q.Name).Refresh    NextEnd Sub
(0)

相关推荐

  • 中奖名单||没有中奖的朋友,期待下次活动

    为芒果季收藏,不用烤箱做蛋糕,无色素还低糖,吃再多也不会腻 找对方子,烘焙很简单,柔软如云朵的蔓越莓吐司,甩面包房几条街 一看就会的几种馒头做法,各个光滑喧软,比面包好吃还简单 一把糯米粉一把糖,复刻 ...

  • 留言中奖名单 | 快来领你的礼物

    选留言的时间略长, 没办法,一千多条留言, 我选择障碍症都犯了. 有些奖品我直接加量了, 没拿到的也别气馁, 关哥时不时就会送书啊,投喂好吃的啊. 只要常来总有机会的. 下面公布名单, 请中奖的小伙伴 ...

  • Excel公式?VBA?还是Power Query!

    最近,一直有朋友问我到底学不学VBA,我一般不建议他们学,除非对编程很感兴趣,或者本身已经有一定的编程基础,否则,将耗费大量的精力,而收效甚微. 恰巧,最近在一本比较专业的书上找到关于Excel函数. ...

  • 怎么用VBA删除Power Query生成的查询?

    有时候,我们希望只将Power Query相关的查询结果给用户,又或者需要将查询的结果固化下来(不随新数据的加入而刷新),而被其他查询引用(比如有些工作中需要做不同阶段的数据检查.校验等),就需要对P ...

  • 使用power query,批量添加前缀和后缀

    生命中对自己最好的爱是学会肯定自己.我们不懂得肯定自己,我们就会认为自己很糟糕.人生的重塑更重要是来自内在意识的重塑.当我们发自内心地认为自己糟糕的时候,我们就会变得随意与随波逐流.学会肯定自己,我们 ...

  • 多表合并(Power Query、SQL、函数与公式、VBA四种方法)

    工作中有时候需要将多张工作表合并到一张工作表,本文总结了四种方法:Power Query 工具.SQL.函数与公式.VBA,四种方法难度依次递增. 方法一:借助Power Query工具 史上多表合并 ...

  • Excel教程:Power Query,万能的批量数据替换技巧!

    每天一点小技能 职场打怪不得怂 编按:说到Excel的替换操作,大家首先想到的一定是SUBSTITUTE和REPLACE函数.可是,今天需要处理的替换问题,这两个函数也束手无策,那要怎么做呢?下面,小 ...

  • Power Query批量汇总JSON文件数据

    为什么我曾多次写及JSON格式数据的相关文章?因为目前JSON已成为当前互联网及各类业务系统的主要数据交换方式之一,且随着新一代软件平台"微服务"架构的流行,JSON格式数据将会更 ...

  • 这个用Power Query操作步骤太多了,还不如用VBA?

    在2017年9月份的时候,我曾经写过一篇叫做<PQ-综合实战:根据关键词匹配查找对应内容>的文章,主要是通过简单操作步骤的方式来实现关键词匹配查找的内容. 说实话,步骤真是特么多(TMD) ...

  • Power Query批量导入Excel文件,和导入文本有一点儿不同

    小勤:大海,你上次说PowerQuery可以批量导入Excel文件,我参考你那个批量导入文本文件的方法试了一下,不行啊. 大海:呵呵.我就知道你会有问题. 小勤:知道会有问题还不早说!你看,我的文件也 ...

  • Power Query合并查询,怎样像VLookup那样只取第1行的数据?

    小勤:Power Query里的合并查询(参考文章:vlookup虽好,然难承大数据之重[PQ关联表合并])强大过头了!我现在的数据一对多的,只想把第1行的数据取回来,该怎么办? 大海:只想取第1行的 ...