想让excel自打开起一直(每秒)不断刷新,用vba怎么写代码呢?
发布网友
发布时间:2022-04-23 17:17
我来回答
共3个回答
热心网友
时间:2023-10-10 13:42
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 亲测可行。
热心网友
时间:2023-10-10 13:42
实现这个功能比较占用系统资源哦,请谨慎使用。
Sub Run_it()
Application.OnTime TimeValue("00:00:01"), "shownowtime" '一旦开始运行后每隔一秒运行一次shownowtime这个宏
End Sub
sub shownowtime()
[a1] = now()‘每隔一秒a1单元格里的时间就更新一次,即可实现秒的实时动态更新
en sub追问类似now()这样的函数只有在对表格进行操作时才会触发更新,我希望在工作表里运行一次vba代码就会自动更新(像F9)整个工作表内的所有单元格(包括时间、日期、其他公式之内的)。
麻烦老师您再帮我调整测试一下好吗?
而且,这个在thisworkbook 与模块内我都放了也不起作用。
热心网友
时间:2023-10-10 13:43
可以试试这个方法
Dim NewTime As Date
NewTime = Now + TimeValue("00:00:10")
ThisWorkbook.Save
Application.OnTime NewTime, "RunStoredMethodE1" “”里面的是宏名称