首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >excel vba Application.OnTime

excel vba Application.OnTime
EN

Stack Overflow用户
提问于 2013-11-20 16:25:09
回答 1查看 1.7K关注 0票数 0

上周,我问了一个关于这个问题的问题,here,我按要求发布了我的代码,但没有回答。总之,我有一些更具体的问题。

重置计时器时,过程参数的目的是什么?用Schedule:=False回电话是没有道理的。例如,如果回调函数不再在作用域内,会发生什么?计时器还能正确复位吗?这就是为什么我看到的大多数例子(包括Chip -不幸的是,由于某些原因,我不允许包含链接)使用On Error Resume Next进行On Error Resume Next调用,很抱歉再次问了一遍,但为什么要这样做呢?

我的理解是,计时器是由EarliestTime参数注册的,这是唯一标识它的定时器的“序列号”。

程序参数是否也包括在登记和随后的识别过程中?

如果回调过程包含在计时器触发时不再存在的对象中,会发生什么?或者更普遍地说,当计时器触发并尝试执行回调过程时,会发生什么错误?

如果包含了LatestTime参数,那么如果计时器无法触发,那么在此之后会发生什么?Windows会完全删除定时器吗?

EN

回答 1

Stack Overflow用户

发布于 2013-11-21 09:12:00

我的理解是,计时器是由EarliestTime参数注册的,这是唯一标识它的计时器的“序列号”。

不知道你在哪里读到的?这并不是一件明智的事情,但原则上您可以安排两个或多个OnTime使用相同的EarliestTime运行。所以这并不意味着它是独一无二的。EarliestTimeProcedure的结合使其独树一帜。

重置计时器时,过程参数的目的是什么?

不清楚您所说的“重置”计时器是什么意思;您的意思是用Schedule := TrueSchedule := False调用Schedule := TrueSchedule := False

无论哪种方式,如果您不指定Procedure参数,那么如何知道要运行哪个过程(或哪个过程要取消)?这就是它的目的。

我建议你试试然后说服自己。

,如果回调过程包含在计时器触发时不再存在的对象中,会发生什么?或者更广泛地说,当计时器触发并尝试执行回调过程时,会发生什么错误呢?

好吧,你试过自己找出来吗?没有什么神秘的事情发生。您将像往常一样收到一条错误消息。

如果包含了LatestTime参数,那么如果计时器无法触发,那么在此之后会发生什么?Windows是否完全擦除计时器?

我想你可以这么说。这个程序不会运行。请参阅VBA帮助:

例如,如果LatestTime设置为EarliestTime + 30,而Microsoft由于另一个过程正在运行而没有在EarliestTime处于就绪、复制、剪切或查找模式,则Microsoft将等待30秒才能完成第一个过程。如果Microsoft在30秒内未处于就绪模式,则不会运行该过程。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20101352

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档