Excel-VBA:定时器的用法

VBA中没有定时器,但是可以使用 “Application.OnTime 时间,过程名”的方式来做一个定时器

  Public TimerEnabled As Boolean
  
  Sub EnableTimer() '开始
    TimerEnabled = True
    StartTimer
  End Sub
  
  Sub DisableTimer() '停用
    TimerEnabled = False
  End Sub
  
  Sub StartTimer()      '注意改代码需要放在模块级
      If TimerEnabled = True Then
        Application.OnTime Now + TimeValue("00:00:01"), "StartTimer" '每1秒钟自动运行一次
        Work '需要每秒运行的代码
      End If
  End Sub
  
  Sub Work()
    Sheet1.Cells(1, 1) = Sheet1.Cells(1, 1) + 1
  End Sub

猜你喜欢

转载自blog.csdn.net/jyh_jack/article/details/83409511