【问题标题】:MS Excel - How to refresh a cell automatically every 5 seconds?MS Excel - 如何每 5 秒自动刷新一次单元格?
【发布时间】:2017-03-05 02:06:54
【问题描述】:

我的 Excel 工作表中有一个单元格,我需要每 5 秒刷新一次此单元格。

MS Excel 本身可以设置刷新,但它只是每 1 分钟一次,而且时间不够长..

我需要 VBA 中的一些代码或宏设置为每 5 秒运行一次,如果我每 5 秒单击一次刷新,我需要执行如下所示的操作:

不知何故,我没有找到任何例子,我完全不知道如何做到这一点,因为我不知道如何在 VBA 中工作..

【问题讨论】:

    标签: vba excel refresh


    【解决方案1】:

    另一个答案描述了如何刷新整个页面,但提出问题的人说他只想更新一个特定的单元格。

    这是每 5 秒更新(计算)单元格 A1 的方法。

     Sub Calculate_Range()    
       Range("G3").Calculate    
       Application.OnTime DateAdd("s", 5, Now), "Calculate_Range"    
     End Sub
    

    【讨论】:

      【解决方案2】:

      知道了,现在可以了:

      Sub UpdateCell()
          ActiveWorkbook.RefreshAll
          Application.OnTime Now + TimeValue("00:00:5"), "List1.UpdateCell"
      End Sub
      

      【讨论】:

        【解决方案3】:

        您可以使用 Application.OnTime 来安排自动刷新。请创建以下 VBA 子程序并执行。它会每 5 秒自动计算一次单元格 A1。

        Sub UpdateCell()
            ActiveWorkbook.RefreshAll
            Application.OnTime Now + TimeValue("00:00:5"), "UpdateCell"
        End Sub
        

        【讨论】:

        • 不起作用。如果我单击运行 (VBA) 没有任何反应,代码似乎根本没有运行..
        • 您的目标刷新单元格是否在单元格 A1 中?
        • 是的,现在它似乎正在刷新(光标每 5 秒更改一次加载模式)但单元格中的值保持不变..
        • 您能否提供有关单元格公式的更多详细信息,或者您想通过刷新来完成什么?如果刷新依赖于点击或其他事件,我们将需要对代码进行不同的增强。
        • 单元格正在从 .txt 文件加载简单文本。当我点击上图所示的按钮时,它会起作用。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-03-21
        • 1970-01-01
        • 2014-10-16
        • 1970-01-01
        • 2013-11-17
        • 1970-01-01
        • 2014-06-01
        相关资源
        最近更新 更多