Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
568to572
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
568to572
568to572
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Countdown

Countdown
18.02.2005 19:01:30
Konni
Hallo Freaks,
ich habe einen Countdown, der die Tabelle nach einer Startzeit von 1 Minute bei Inaktivität abspeichert und automatisch schließt, damit Kollegen im Netzwerk auch daran arbeiten können.
Bei Erreichen von 30 Sekunden ertönt ein Klingelton, bei kleiner/gleich 5 Sekunden pro Sekunde ein Piep.
Wenn ich die Startzeit auf 5 Minuten einstelle, so passiert das Ganze wiederholt im Minutenrythmus. - Wie kann ich dies auf kleiner 1 Minute beschränken?
Der Code: If Second(.Value) = 30 Then ....
Besten Dank für Eure Hilfe
Konni

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Countdown
18.02.2005 19:09:03
Konni
Hier der kompltte Code:
Option Explicit
Public ET As Variant
Public DaZeit As Date
Private Declare

Function sndPlaySound32 Lib "winmm.dll" _
Alias "sndPlaySoundA" (ByVal lpszSoundName _
As String, ByVal uFlags As Long) As Long

Sub Zeitmakro()
With ThisWorkbook.Worksheets("Maßnahmen 2005").Range("A10")
.Value = .Value - CDate("00:00:01")
If .Value <> 0 Then
ET = Now + TimeValue("00:00:01")
If Second(.Value) = 30 Then
Call sndPlaySound32("C:\Winnt\media\klingel.wav", 1)
End If
If Second(.Value) <= 5 Then
Call sndPlaySound32("C:\Winnt\media\ding.wav", 1)
End If
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 With
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

Gruß: Konni
Anzeige
AW: Countdown
18.02.2005 19:09:13
Konni
Hier der kompltte Code:
Option Explicit
Public ET As Variant
Public DaZeit As Date
Private Declare

Function sndPlaySound32 Lib "winmm.dll" _
Alias "sndPlaySoundA" (ByVal lpszSoundName _
As String, ByVal uFlags As Long) As Long

Sub Zeitmakro()
With ThisWorkbook.Worksheets("Maßnahmen 2005").Range("A10")
.Value = .Value - CDate("00:00:01")
If .Value <> 0 Then
ET = Now + TimeValue("00:00:01")
If Second(.Value) = 30 Then
Call sndPlaySound32("C:\Winnt\media\klingel.wav", 1)
End If
If Second(.Value) <= 5 Then
Call sndPlaySound32("C:\Winnt\media\ding.wav", 1)
End If
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 With
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

Gruß: Konni
Anzeige
AW: Countdown
18.02.2005 19:09:25
Konni
Hier der kompltte Code:
Option Explicit
Public ET As Variant
Public DaZeit As Date
Private Declare

Function sndPlaySound32 Lib "winmm.dll" _
Alias "sndPlaySoundA" (ByVal lpszSoundName _
As String, ByVal uFlags As Long) As Long

Sub Zeitmakro()
With ThisWorkbook.Worksheets("Maßnahmen 2005").Range("A10")
.Value = .Value - CDate("00:00:01")
If .Value <> 0 Then
ET = Now + TimeValue("00:00:01")
If Second(.Value) = 30 Then
Call sndPlaySound32("C:\Winnt\media\klingel.wav", 1)
End If
If Second(.Value) <= 5 Then
Call sndPlaySound32("C:\Winnt\media\ding.wav", 1)
End If
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 With
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

Gruß: Konni
Anzeige
AW: Countdown
Ramses
Hallo
wenn du nur Sekunden prüfst, ist das klar :-)

Sub Zeitmakro()
With ThisWorkbook.Worksheets("Tabelle1").Range("A1")
.Value = .Value - CDate("00:00:01")
If .Value <> 0 Then
ET = Now + TimeValue("00:00:01")
If Minute(.Value) < 0 Then
If Second(.Value) = 30 Then
Call sndPlaySound32("C:\Winnt\media\klingel.wav", 1)
End If
If Second(.Value) <= 5 Then
Call sndPlaySound32("C:\Winnt\media\ding.wav", 1)
End If
End If
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 With
End Sub

Gruss Rainer
Anzeige
Sorry,... kleine Korrektur :-)
Ramses
Hallo
es muss heissen
If Minute(.Value) = 0 Then
Gruss Rainer
AW: Sorry,... kleine Korrektur :-)
Konni
Hallo Rainer,
vielen Dank für Deine Hilfe, klappt prima. - Konnte mich leider nicht früher bedanken, da ich ausser Haus war.
:-) Konni

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige