Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VBA代码,在不活动后关闭excel,并可与其他宏一起运行_Vba_Excel - Fatal编程技术网

VBA代码,在不活动后关闭excel,并可与其他宏一起运行

VBA代码,在不活动后关闭excel,并可与其他宏一起运行,vba,excel,Vba,Excel,您好,我正在寻找的代码,将关闭excel后,指定的时间,该用户已不活动。我已联机处理此问题的代码,但它不能与工作簿中的其他宏一起正确运行。我需要的代码可以与其他宏一起运行,并将在用户不活动后关闭。任何帮助都将不胜感激 在每个宏的末尾为非活动计数器调用宏。使用在每个宏开头传递0的全局变量退出非活动计数器宏。仅键盘非活动控件的示例代码: Public br As Integer Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds

您好,我正在寻找的代码,将关闭excel后,指定的时间,该用户已不活动。我已联机处理此问题的代码,但它不能与工作簿中的其他宏一起正确运行。我需要的代码可以与其他宏一起运行,并将在用户不活动后关闭。任何帮助都将不胜感激

在每个宏的末尾为非活动计数器调用宏。使用在每个宏开头传递0的全局变量退出非活动计数器宏。仅键盘非活动控件的示例代码:

Public br As Integer
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Byte) As Integer
Sub brea()
  br = 0
  'do stuff here
  Call test
End Sub
Sub test()
  br = 1
  Dim t As Integer
  t = 0
  While t < 15
    t = t + 1
    Sleep (1000)
    For i = 0 To 255
        ret = GetAsyncKeyState(i)
        If ret <> 0 Then t = 0
    Next
    Application.StatusBar = t
    If br = 0 Then GoTo Ends
    DoEvents
  Wend
  Application.Quit
  Ends:
End Sub

请将您的代码添加到问题中,以便用户能够更好地帮助您。请参阅此常见问题解答以帮助您改进问题。由于VBA是单线程的,因此无法运行宏等待。您可以运行宏以等待不活动,也可以运行其他宏。你不能两者兼而有之