işlem yapılmadığında program kapansın

Katılım
27 Kasım 2006
Mesajlar
3
Excel Vers. ve Dili
2003 türkçe
Forumda bununla ilgili 3 konuyla karşılaştım. Verilen cevaplar anlaşılır değil. Acaba bu işin uzmanları konuya bir açıklık getirilebilirmi. Form üzerinde 1 dakika hiçbir işlem yapılmadığı durumlarda kapanması veya programdan çıkışı nasıl yapılabilir.
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Merhaba;

Alttaki kodu açılış formunuzun "zaman dolduğunda" olayına yazınız ve süre ölçer aralığını da 1000 yapınız ( her saniye kontrol etmesi)..

Kod:
Const IDLEMINUTES = [COLOR="Red"]1[/COLOR] ' Kaç dakika istiyorsanız onu yazın

         Static PrevControlName As String
         Static PrevFormName As String
         Static ExpiredTime

         Dim ActiveFormName As String
         Dim ActiveControlName As String
         Dim ExpiredMinutes

         On Error Resume Next

         ' Get the active form and control name.

         ActiveFormName = Screen.ActiveForm.Name
         If Err Then
            ActiveFormName = "No Active Form"
            Err = 0
         End If

         ActiveControlName = Screen.ActiveControl.Name
            If Err Then
            ActiveControlName = "No Active Control"
            Err = 0
         End If

         ' Record the current active names and reset ExpiredTime if:
         '    1. They have not been recorded yet (code is running
         '       for the first time).
         '    2. The previous names are different than the current ones
         '       (the user has done something different during the timer
         '        interval).
         If (PrevControlName = "") Or (PrevFormName = "") _
           Or (ActiveFormName <> PrevFormName) _
           Or (ActiveControlName <> PrevControlName) Then
            PrevControlName = ActiveControlName
            PrevFormName = ActiveFormName
            ExpiredTime = 0
         Else
            ' ...otherwise the user was idle during the time interval, so
            ' increment the total expired time.
            ExpiredTime = ExpiredTime + Me.TimerInterval
         End If

         ' Does the total expired time exceed the IDLEMINUTES?
         ExpiredMinutes = (ExpiredTime / 1000) / 60
         If ExpiredMinutes >= IDLEMINUTES Then
            ' ...if so, then reset the expired time to zero...
            ExpiredTime = 0
            ' ...and call the IdleTimeDetected subroutine.
            'IdleTimeDetected ExpiredMinutes
            DoCmd.Quit
         End If
 
Katılım
27 Kasım 2006
Mesajlar
3
Excel Vers. ve Dili
2003 türkçe
Teşekkür ederim.Elinize kolunuza sağlık. Kafamda böyle olurmu düşüncesi vardı. Uygulamasını yaptım gayet güzel.
 
Üst