想让excel自打开起一直(每秒)不断刷新,用vba怎么写代码呢?

2025-03-10 14:21:33
推荐回答(3个)
回答1:

ThisWorkBook 里面写:

Private Sub Workbook_Open()
freshtime
End Sub

然后新建模块里面写:

Sub freshtime()
Dim NewTime As Date
NewTime = Now + TimeValue("00:00:01")
Calculate
Application.OnTime NewTime, "freshtime"
End Sub

然后保存并重新打开表格,数据每秒自动刷新。

如果要不间断一直刷新,把 + TimeValue("00:00:01")去掉,但是会非常卡,无法操作。
原创,Excel 2016 亲测可行。

回答2:

实现这个功能比较占用系统资源哦,请谨慎使用。
Sub Run_it()
Application.OnTime TimeValue("00:00:01"), "shownowtime" '一旦开始运行后每隔一秒运行一次shownowtime这个宏
End Sub

sub shownowtime()
[a1] = now()‘每隔一秒a1单元格里的时间就更新一次,即可实现秒的实时动态更新
en sub

回答3:

可以试试这个方法
Dim NewTime As Date
NewTime = Now + TimeValue("00:00:10")
ThisWorkbook.Save
Application.OnTime NewTime, "RunStoredMethodE1" “”里面的是宏名称