【问题标题】:VBA in Excel 2007/2010 GUI Hidden Sheet Query RefreshExcel 2007/2010 GUI 中的 VBA 隐藏工作表查询刷新
【发布时间】:2010-11-24 09:30:25
【问题描述】:

您好,第一次发帖,希望有人能提供帮助,因为它会导致脱发。

我使用 excel 和 access 设计 GUI。 2003 年我从来没有遇到过问题,但是自从更新到 2007/2010 年以来,我遇到了一个非常简单的问题。

在 2003 年,我可以使用

在非常隐藏的工作表上刷新查询
Sheet2.Range("a1").QueryTable.Refresh BackgroundQuery:=False

在 2007 / 2010 年我不能这样做。如果我将 2003 年工作表中的查询完美地剪切并粘贴到 2007 / 2010 年,它会起作用,但如果它是我在 2007 年 / 2010 年构建的查询,则不会。

录音机吐出来

Range("Table_Query_from_MS_Access_Database_1[[#Headers],[Trans_ID]]").Select
Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

必须首先选择哪个页面才能运行

逻辑上我已经尝试过了

Sheet2.Range("a1").Select
Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

首先再次选择查询的位置不会起作用,它在 Sheet2.Range("a1").Select 部分失败

然后我逻辑上尝试了

Sheet2.Range("a1").Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

这还是不行

Sheet2.Range("Table_Query_from_MS_Access_Database_1[[#Headers],Trans_ID]]") _
      .Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False

这个也不行

我想要做的就是刷新一个非常隐藏的工作表上的查询

使用 screen.update = false 然后取消隐藏宏 hide screen update = true 并不是很理想,因为我想阻止最终用户访问此查询,因为它是 excel 中登录系统的一部分,我只是想不出办法刷新隐藏表上的查询,这是 2003 年的一项简单任务。

请帮我脱发

谢谢

理查德

【问题讨论】:

    标签: vba excel


    【解决方案1】:

    选择不适用于非常隐藏的工作表。 不带选择试试 -
    Sheet2.Range("a1").ListObject.QueryTable.Refresh BackgroundQuery:=False

    【讨论】:

    • :O 它可以工作 隐藏 :( ) 它可以工作 非常隐藏 非常感谢!!!!这让我为树木发疯,我今晚可能会睡一觉,因为我一直在尝试一切尝试在 excel 中创建更无缝的 GUI 2007 年开始认为 M$ 将开始迫使 ppl 使用它们 可怕的数据透视表,现在我可以使用我最喜欢的 sumproduct(--(( 我的 GUI 报告的摘要方式,我是认真的,谢谢 :)
    猜你喜欢
    • 2011-05-01
    • 2011-02-25
    • 1970-01-01
    • 1970-01-01
    • 2014-03-03
    • 2017-03-28
    • 1970-01-01
    • 2014-08-07
    • 1970-01-01
    相关资源
    最近更新 更多