VBA输入框堆栈未排队

上下文

我正在Excel VBA中使用Application.OnTime方法来跟踪我每15分钟要处理的工作。我输入了一些描述我在做什么的文本,然后当我按OK时,该子例程将该文本添加到计划运行该框的时间的列表中。

我特别想使用计划运行该框的时间,因为这意味着如果我不在办公桌旁,则可以在以后的时间填写该框,但是输入仍将对应于该时间我想要。

请注意,我正在使用32位Office 365。

问题

当前的问题是,如果我离开办公桌足够长的时间,则会生成许多输入框。当我回来填写我一直在做的事情时,方框的顺序与计划的顺序不同-相反,第一个方框正确地是最早的方框,但是在确定之后其余的与最新的一起出现。输入框似乎堆叠而不是排队。

这是不可取的,因为我的列表没有按照升序排列。有没有办法改变输入框的这种行为?

工作示例

下面是一个工作示例。

Public Sub Scheduler() 

    Dim i      As Integer
    Dim AtTime As Double

    For i = 1 To 5

        AtTime = Time + (TimeSerial(0,2) * i)
        Application.OnTime AtTime,"'InputBoxExample " & AtTime & "'"

    Next i

End Sub

Public Sub InputBoxExample(Box_Time As Double)

    Debug.Print Format(Box_Time,"hh:mm:ss"),InputBox(prompt:="Put in some input.",Title:="Scheduled at: " & Format(Box_Time,"hh:mm:ss"))

End Sub

如果运行此命令,将其保留10秒钟以上,然后确定每个框(无输入文本),则立即窗口将显示以下内容(的变体):

15:07:01
15:07:09
15:07:07
15:07:05
15:07:03

我希望生成以下列表,即使我稍后再回到输入框:

15:07:01
15:07:03
15:07:05
15:07:07
15:07:09
yinziforever 回答:VBA输入框堆栈未排队

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3165543.html

大家都在问