ActiveWorkbook.Connections("x").Refresh 完成时执行的代码

2023-12-24

从外部源选择数据
我有一个数据连接,它使用select使用 vba 代码从 SQL 服务器查询到 Excel 工作表,如下所示:

With ActiveWorkbook.Connections("x"). _
    OLEDBConnection
    .BackgroundQuery = True
    .CommandText = Array( _
    "SELECT ... FROM ...
...
ActiveWorkbook.Connections("x").Refresh

链接到导入数据的数据透视表也需要刷新
但据我所知ActiveWorkbook.Connections("x").Refresh异步运行,我想执行刷新完成后运行的代码,以便我可以运行以下代码:

Private Sub UpdatePivot()
Dim PV As PivotItem

  For Each PV In ActiveSheet.PivotTables("PT1").PivotFields("PN").PivotItems
    If PV.Name <> "(blank)" Then
      PV.Visible = True
    Else
      PV.Visible = False
    End If
  Next
End Sub

但仅当数据被读入时
我如何知道刷新何时完成获取所有数据?
我需要做什么才能只运行UpdatePivot刷新完成后,无需求助于sleep hacks.

附:有时查询很快( 30 秒),具体取决于我选择的确切数据,这是动态的。


这不是一个出色的解决方案,但你可以ActiveWorkbook.Connections("x").Refresh通过设置同步运行

.BackgroundQuery = False

另一个更复杂的解决方案是通过检查连接的状态来轮询.Refreshing http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.oledbconnection.refreshing.aspx循环构造内的属性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ActiveWorkbook.Connections("x").Refresh 完成时执行的代码 的相关文章

随机推荐

  • 在Python中以单独显示所有边的方式绘制有向图

    我正在使用 Python 来模拟有向图上发生的过程 我想制作这个过程的动画 我遇到的问题是大多数 Python 图形可视化库将成对的有向边组合成单个边 例如 NetworkX http networkx lanl gov显示下图时仅绘制两条
  • 我怎样才能在 vs 2010 安装项目中为两个不同的发行版本拥有不同的属性等?

    我想要的是我的解决方案中只有一个安装项目 并且我希望能够在一台计算机上同时安装 release1 和 release2 版本 如版本 debug release1 release2 因此 release1 版本需要自己的程序文件夹 产品代码
  • 抓取重定向的页面

    我尝试抓取一个简单的页面 需要欢呼和请求 https www ishares com uk individual en products 251824 https www ishares com uk individual en produ
  • 当 spring.profiles.active 设置多个 Spring 环境配置文件时,优先顺序是什么

    我只是想知道是什么优先顺序是指定多个 Spring 活动配置文件时的顺序 说我想要default配置文件处于活动状态 但dev当有多个相同的元素 例如 bean 可供选择但具有不同的配置文件时 配置文件将覆盖它 比如说我有两个Propert
  • 在 MongoDb 中更新插入字典

    据我所知 mongodb 知道Dictionary作为一个对象 它不能进行任何与数组相关的操作 我更改了序列化并尝试了各种类型的字典序列化 但没有机会 所以我将我的字段 字典 全部 加载到内存中 更新它并将其设置回 mongodb 有什么办
  • setPage() 函数的页码错误:0

    我的 tcpdf 代码是 file to show test details pdf view test details tpl test details smarty gt fetch file to show test details
  • Maven 和 Jenkins - 'mvn' 不被识别为内部或外部命令,

    我正在尝试学习 Jenkins 和 Maven 到目前为止我所做的 安装Maven并设置M2 and M2 HOME作为环境变量 从 eclipse 创建一个简单的 Maven 项目 gt 创建了一个 bat我要移动到的目录中的文件pom
  • 在 React Native WebView 中启用弹出窗口

    我有一个 React Native 应用程序 使用 React Native 0 43 3 它使用 WebView 来显示用于网上银行的网页 该网站加载一个带有登录页面的弹出窗口 对于 ReactNative WebView 此弹出窗口不会
  • 无法从 X509Store 读取 CurrentUser 证书

    我正在开发 ASP NET 4 0 Web 应用程序 我想从 X509Store 读取当前用户证书 读取 LocalMachine 证书工作正常 但如果我将 StoreLocation 设置为 CurrentUser 它会给我一个空集合 下
  • 如何控制何时在 iOS 中提示用户推送通知权限

    我使用 Swift 和 Xcode 6 以及 Parse 框架来处理服务 为 iPhone 构建了一个应用程序 在遵循有关如何设置推送通知的 Parse 教程时 说明建议我将推送通知放在 App Delegate 文件中 这是我添加到应用程
  • 从 PowerShell 使用 .NET 库

    我有一个用于操作数据库的 PowerShell 管理单元 管理单元本身只是在单独的 NET DLL 中实现的主库的包装 所有这些都用 C 编写 我已使用 installutil exe 向 GAC 注册了管理单元和实现 DLL 虽然该管理单
  • 如何使用 robolectric 对 Android 音频录制应用程序进行单元测试

    我只是想知道是否可以使用 Robolectric 框架对 Android 录音机应用程序进行单元测试 据我所知 Robolectric 没有使用模拟器或真实设备进行测试 但是在录音应用程序中 我需要测试音频是否被录制 它是否存储在SD卡上的
  • Spotify Embed iFrame 仅播放歌曲预览

    在我的网站上 即使我登录了 Spotify Premium 我似乎也只能在 Chrome 和 Safari 中播放播放列表中的曲目预览 不过 完整曲目可以在 Firefox 中播放 为什么会出现这种情况呢 这是我的网站 www studif
  • 全屏模式下的 JInternalFrame

    我打算在全屏模式下使用 JInternalFrame 作为模态 JDialog 但是 当前在调用它时并未显示它 我需要将其添加到某个容器中吗 我尝试将其添加到 JOptionPane showInternalMessage 但由于我想让对话
  • 即席查询、存储过程、动态 SQL [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • PHP - 简单 XML - 嵌套层次结构

    我一直在使用 PHP 的简单 XML 函数来处理 XML 文件 下面的代码适用于简单的 XML 层次结构 xml simplexml load file test xml echo xml gt getName br foreach xml
  • 从 pandas 数据框中减去两列并将结果存储在第三列中[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我有一个数据框 df 有 3 列 我想执行减法如下 df available df recommended df man
  • 使用 class.forname 但想要自动装配目标类的成员

    我有这个需求 我的框架的方式是从配置文件中以字符串形式读取类名 我想使用该类中的方法 显而易见的解决方案是使用反射 我已经使用了反射并能够调用我想要的方法 但问题是目标类内的变量没有自动装配 我知道我不会让 spring 通过使用反射来自动
  • 如何将 system() 调用结果的每一行写入 Vimscript 中的列表?

    我想使用 Vimscript 循环遍历目录中的文件 阅读usr 41 txt四处搜寻后 我能想到的最好的办法就是let dir contents system ls 但是由于system 没有返回列表 我无法循环它 有没有办法可以将系统调用
  • ActiveWorkbook.Connections("x").Refresh 完成时执行的代码

    从外部源选择数据我有一个数据连接 它使用select使用 vba 代码从 SQL 服务器查询到 Excel 工作表 如下所示 With ActiveWorkbook Connections x OLEDBConnection Backgro