If all you want is to be able to kick user's out so you can do backend maintenance you don't need to check if they idle or not. I have a back-end table where I can toggle a boolean field on or off; the main switchboard has a timer event that monitors that and if gets turned of displays a timed message and shuts down
Code:
If DLookup("[Shutdown]", "[usysShutDown]") = True And DLookup("[Initiator]", "[usysShutDown]") <> fOSUserName() Then
'initiate shut-down
Me.ckNoPrompt = True
'display message
MBox "Admin message from " & DLookup("[InitiatedBy]", "[qryShutDownMessage]") & ": " & vbCrLf & DLookup("[MessageDisplayed]", "[qryShutDownMessage]") & ". ", vbCritical + vbExclamation, "Admin Message", , , , , 5
On Error Resume Next
DoCmd.RunCommand acCmdSaveRecord
DoCmd.RunCommand acCmdSave
DoCmd.Quit acQuitSaveAll
End If
Cheers,