想让excel自打开起一直(每秒)不断刷新,用vba怎么写代码呢? 20
我希望不管是时间、日期或者是公式都会一直自动刷新,就像一直运行F9一样,而且处于非当前窗口时也一样不受影响。比如当我晚上零点过后进入第二天时,系统时间变了,一直开着的ex...
我希望不管是时间、日期或者是公式都会一直自动刷新,就像一直运行F9一样,而且处于非当前窗口时也一样不受影响。比如当我晚上零点过后进入第二天时,系统时间变了,一直开着的excel会自动更新日期并且参与其他单元格的公式计算。
展开
3个回答
展开全部
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 亲测可行。
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 亲测可行。
推荐于2017-11-24
展开全部
实现这个功能比较占用系统资源哦,请谨慎使用。
Sub Run_it()
Application.OnTime TimeValue("00:00:01"), "shownowtime" '一旦开始运行后每隔一秒运行一次shownowtime这个宏
End Sub
sub shownowtime()
[a1] = now()‘每隔一秒a1单元格里的时间就更新一次,即可实现秒的实时动态更新
en sub
Sub Run_it()
Application.OnTime TimeValue("00:00:01"), "shownowtime" '一旦开始运行后每隔一秒运行一次shownowtime这个宏
End Sub
sub shownowtime()
[a1] = now()‘每隔一秒a1单元格里的时间就更新一次,即可实现秒的实时动态更新
en sub
追问
类似now()这样的函数只有在对表格进行操作时才会触发更新,我希望在工作表里运行一次vba代码就会自动更新(像F9)整个工作表内的所有单元格(包括时间、日期、其他公式之内的)。
麻烦老师您再帮我调整测试一下好吗?
而且,这个在thisworkbook 与模块内我都放了也不起作用。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以试试这个方法
Dim NewTime As Date
NewTime = Now + TimeValue("00:00:10")
ThisWorkbook.Save
Application.OnTime NewTime, "RunStoredMethodE1" “”里面的是宏名称
Dim NewTime As Date
NewTime = Now + TimeValue("00:00:10")
ThisWorkbook.Save
Application.OnTime NewTime, "RunStoredMethodE1" “”里面的是宏名称
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询