Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
664to668
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
664to668
664to668
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Erinnerung an Feierabend

Erinnerung an Feierabend
13.09.2005 22:24:19
HansH
Moin Profis und Hobbyexelianer,
ich habe folgenden Code in "Diese Arbeitsmappe". Er soll ein Passwort bei Überschreitung einer Uhrzeit verlangen (Schutz vor Überarbeitung :-) )
Leider werden beim Verfalldatum keine 24 Stunden akzeptiert. Die eingegebene Uhrzeit im Code wird automatisch auf maximal 12 Uhr und PM umgewandelt.

Private Sub Workbook_Open()
Application.DisplayAlerts = False
jetzt = Now
Verfalldatum = #11:00:00 PM# 'Hier Verfalldatum im Format MM/TT/JJJJ eintragen
If Verfalldatum < jetzt Then
Dim passwort As String
passwort = InputBox("Die Testphase ist abgelaufen," & Chr(13) & Chr(13) & "  bitte geben Sie Ihre Registrierungs-Nr.:", "Testphase abgelaufen, Reg.Nr. erforderlich")
If passwort <> "geheim" Then
MsgBox "     Das Kennwort ist ungültig," & Chr(13) & Chr(13) & "der Vorgang wird abgebrochen !"
ThisWorkbook.Close
End If
MsgBox ("Registrierung erfolgreich")
Application.DisplayAlerts = True
End If
End Sub

Kann mir jemand sagen was ich machen muss, damit z.B. auch 20 Uhr akzeptiert wird?
Danke für ein paar gute Tip(p)s
HansH

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Erinnerung an Feierabend
13.09.2005 22:27:11
Ramses
Hallo
Das Makro wird NUR beim öffnen abgefragt, danach ist Ruhe
Verfalldatum = TimeValue("20:00:00")
Gruss Rainer
AW: Erinnerung an Feierabend
13.09.2005 22:53:58
HansH
Hallo Rainer,
danke für die schnelle Antwort. Ich habe mal alles soweit korrigiert und Deine Hilfe eingebaut. Siehe unten.
Du hast aber Recht: Wenn die Datei schon geöffnet ist bewirkt das leider garnichts. Würdest Du mir helfen auch das Problem zu beseitigen?
Also: auch wenn die Datei schon geöffnet ist, zum Zeitpunkt X die Passwortabfrage oder Ähnliches?
Hier noch einmal der geänderte Code.

Private Sub Workbook_Open()
Application.DisplayAlerts = False
jetzt = Now
Verfallzeit = TimeValue("23:00:00")      'Hier Verfallzeit im Format 00:00:00 eintragen
If Verfallzeit > jetzt Then
Dim passwort As String
passwort = InputBox("Die Testphase ist abgelaufen," & Chr(13) & Chr(13) & "  bitte geben Sie Ihre Registrierungs-Nr.:", "Testphase abgelaufen, Reg.Nr. erforderlich")
If passwort <> "geheim" Then
MsgBox "     Das Kennwort ist ungültig," & Chr(13) & Chr(13) & "der Vorgang wird abgebrochen !"
ThisWorkbook.Close
End If
MsgBox ("Registrierung erfolgreich")
Application.DisplayAlerts = True
End If
End Sub

Was wäre das nett.
Gruß aus Ostfriesland
HansH
Anzeige
AW: Erinnerung an Feierabend
13.09.2005 23:18:17
Ramses
Hallo
Dazu brauchst du 2 Extra Makros die rekursiv aufgerufen werden.
Stichwort "Application.OnTime"
Das muss in Workbook_Open
Option Explicit

Private Sub Workbook_Open()
    CheckTIme
End Sub

Das muss in ein Modul
Option Explicit

Sub CheckTIme()
    Dim passwort As String
    Verfallzeit = TimeValue("23:00:00") 'Hier Verfallzeit im Format 00:00:00 eintragen
    If Verfallzeit > Now Then
        Application.DisplayAlerts = False
        passwort = InputBox("Die Testphase ist abgelaufen," & Chr(13) & Chr(13) & " bitte geben Sie Ihre Registrierungs-Nr.:", "Testphase abgelaufen, Reg.Nr. erforderlich")
        If passwort <> "geheim" Then
            MsgBox " Das Kennwort ist ungültig," & Chr(13) & Chr(13) & "der Vorgang wird abgebrochen !"
            ThisWorkbook.Close
        End If
        MsgBox ("Registrierung erfolgreich")
        Application.DisplayAlerts = True
    End If
    'Nächste Prüfung in einer Minute
    Application.OnTime Now + TimeValue("00:01:00"), CheckTIme
End Sub


Das ganze ist ungetestet,... sollte aber tun.
Gruss Rainer
Anzeige
AW: Erinnerung an Feierabend
14.09.2005 00:08:49
HansH
Danke Rainer,
leider ein kleines Problem. Die Datei meldet "Fehler beim kompilieren, Variable nicht definiert". Ich habe die Datei mal beigefügt. Wenn Du Dir
dies zu so später/früher Zeit nicht mehr antun willst kann ich das verstehen. Vielleicht schaust Du es Dir später an. Wäre nett, wenn Du dran bleibst.
Gruß
HansH

Die Datei https://www.herber.de/bbs/user/26535.xls wurde aus Datenschutzgründen gelöscht

AW: Erinnerung an Feierabend
14.09.2005 00:28:22
Ramses
Hallo
Und...., was meinst du wohl was EXCEL damit meint :-)
Verfallzeit ist bloss geschrieben aber nicht deklariert
Dim Verfallzeit as Date
und dann noch ein kleiner Lapsus meinerseits
Application.OnTime Now + TimeValue("00:01:00"), "CheckTIme"
Der Makroaufruf muss in Anführungszeichen
Gruss Rainer
Anzeige
Jetzt dreht Excel durch
14.09.2005 01:49:40
HansH
Hallo Rainer,
ich habe geglaubt, dass nun alles korrekt zusammengebaut ist. Siehe Datei:
https://www.herber.de/bbs/user/26536.xls
Doch wenn ich die Datei schließe, aber Excel als Programm weiterhin geöffnet lasse, bekomme ich alle 1 Minute die Meldung, dass eine Datei mit möglicherweise gefährlichem Inhalt geöffnet werden kann ja/nein. Und das ist eben diese anhängende Datei.
Hat das was mit
Application.OnTime Now + TimeValue("00:01:00"), "CheckTIme"
zu tun? Ich wollte eigentlich nur, dass das Passwort bei schon geöffneter Datei ab einer gewissen Zeit abgefragt wird.
Schau doch mal
Jetzt wirds leider Zeit fürs Bett
Gruß
Hans
Anzeige
AW: Erinnerung an Feierabend
14.09.2005 00:12:09
HansH
Nachtrag:
Die Idee mit der zeitabhängigen Wiederholung ist klasse
Hans

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige