Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
440to444
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
440to444
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Beenden automatisieren, wenn Zeit überschritten

Beenden automatisieren, wenn Zeit überschritten
12.06.2004 00:36:25
Andy
Hallo,
ich habe eine Datei an der viele arbeiten, die gern einmal vergessen beim
Außendienst oder so die Datei zu schließen. Wie kann ich das am besten managen,
dass man diese Datei nach 5 Min geschlossen bekommt und der Rest Excel offen
bleibt?
Würde mich über schnelle Hilfe sehr freuen.
Gruß
Andy

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beenden automatisieren, wenn Zeit überschritten
12.06.2004 00:51:22
Heinz
Hallo Andy,
ich habe das mal für eine Mappe mit Hajo entwickelt
In diese Arbeitsmappe folgende Makros:
Option Explicit
'

Private Sub Workbook_Open()
DaZeit = "0:10:00" 'hier die Zeit ändern in "0:05:00"
ThisWorkbook.Worksheets("Eingabetabelle").Range("A1") = CDate(DaZeit)
Zeitmakro
End Sub


Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.OnTime EarliestTime:=ET, Procedure:="Zeitmakro", Schedule:=False
End Sub


Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
ThisWorkbook.Worksheets("Eingabetabelle").Range("A1") = DaZeit
End Sub

In ein Modul:
Option Explicit
Public ET As Variant
Public DaZeit As Date
Sub Zeitmakro()
ThisWorkbook.Worksheets("Eingabetabelle").Range("A1") = ThisWorkbook.Worksheets("Eingabetabelle").Range("A1") - CDate("00:00:01")
If ThisWorkbook.Worksheets("Eingabetabelle").Range("A1") 0 Then
ET = Now + TimeValue("00:00:01")
Application.OnTime ET, "Zeitmakro"
Else
ThisWorkbook.Close True 'speichern
' Meldung bei Excel immer in Vordergrund
' Dim mldg
' mldg = MsgBox("Endzeit erreicht", 1048576, "Endzeit")
' 1048576 entspricht vbMsgBoxRtlReading
End If
End Sub
Sub MacrosON()
'Dieses Macro ausführen wenn der Code zwischen
'Application.EnableEvents = False und
'Application.EnableEvents = True
'angehalten wurde oder abstürzt
Application.EnableEvents = True
End Sub
Ich hoffe, dass ich alles herauskopiert habe was du brauchst. Teste mal.
Gruß Heinz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige