Hallo zusammen,
Ich habe für meine Firma ein Eingabe-Formular gebaut, mit dem Proben erfasst werden. Damit nicht jeder in der Datei rumfummelt, besitzt diese Datei ein einfaches Passwort-System, welches den Nutzer nach ca. 10 Minuten aus der Datei ausloggt. Der sich selbst wiederholende Aufruf fuktioniert auch soweit ganz gut, ABER... Wenn ich ein anderes Fenster im Fokus habe, um dort etwas einzutragen, dann bekomme ich den Laufzeitfehler '9', Index außerhalb des gültigen Bereichs. Ich vermute mal, es liegt daran, dass mein Fenster mit der entsprechenden Datei nicht im Fokus liegt, aber wie bekomme ich den Fehler weg? Hier der Code:
Sub check_lastaction()
Application.ScreenUpdating = False
'Diese Sub checkt alle 30 Sekunden, ob der Timer von 10 Minuten abgelaufen ist.
'Bei Ablauf des Timers wird der Benutzer automatisch abgemeldet
'Wenn der Timer abgelaufen ist UND ein Nutzer eingeloggt ist, wird der Nutzer ausgeloggt
If (Worksheets("Eingabemaske").Cells(1, 16).Value Now) And Not (Worksheets("Eingabemaske").Cells(2, 16).Value = "" Or Worksheets("Eingabemaske").Cells(2, 16).Value = 0) Then
Call Modul1.Auto_Speichern_und_logout
End If
'Den 30 Sekunden Timer neu setzen
'Dim check_logout As Variant
check_logout = Now + TimeValue("00:00:30")
'Die Statusbar je nach Login aktualisieren
If Worksheets("Eingabemaske").Cells(2, 16).Value = "" Or Worksheets("Eingabemaske").Cells(2, 16).Value = 0 Then
Application.StatusBar = "Auto-Logout: > - Nächster Check: " & check_logout
Else
Application.StatusBar = "Auto-Logout: " & Worksheets("Eingabemaske").Cells(1, 16).Value & " - Nächster Check: " & check_logout
End If
'Diese Sub ruft sich in 30 Sekunden neu auf
Application.OnTime check_logout, "Modul2.check_lastaction"
Application.ScreenUpdating = True
End Sub
Es gibt eine andere Sub, die bei jeder Aktion einen Zeitstempel in einer Zelle aktualisiert, dagegen wird prüft der Timer in dieser Sub.
Ich hab schon versucht, mit ScreenUpdating, ob das das Problem behebt, aber es klappt nicht. Nachdem diese Sub einmal durch den Fehler ausgefallen ist, spinnt die Datei und muss geschlossen und neu geöffnet werden, damit man wieder Proben erfassen kann...
Wie bekomme ich das hin, dass auch im Hintergrund der Login geprüft wird und ggf. der Nutzer ausgeloggt?
Und, nein, ich darf die Datei leider nicht hochladen...
MfG