Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Nach Ablauf eines Zeitglieds führe Aktion aus

Forumthread: Nach Ablauf eines Zeitglieds führe Aktion aus

Nach Ablauf eines Zeitglieds führe Aktion aus
22.03.2015 13:32:50
Daniel
Hallo zusammen,
ich stehe vor folgender Herausforderung:
Ich habe in mehrere Zellen eine Dropdown-Liste mit Schlüssel, die für gewisse Aktionen stehen, wie Schlüssel 3, um eine ganze Zeile zu löschen.(DropDownList rein über Excel!)
Nun möchte ich, dass wenn der Schlüssel 3 ausgewählt ist, zunächst ein Zeitglied abläuft und dann erst die Zeile gelöscht wird!
Ich habe zwei verschiede Ansätze geltend gemacht, die leider beide nicht ordnungsgemäß funktionieren.
Die Fehlermeldung "Das Makro ist nicht verfügbar, kann nicht ausgeführt werden ... etc."
Ansatz 1:
Option Explicit
Public Sub StartZeitGeber()
Application.OnTime Now + TimeValue("0:0:3"), "Worksheet_Change"
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("M7").Value = 3 Then Range("B7:C7,E7:K7,M7").ClearContents
If Range("M8").Value = 3 Then Range("B8:C8,E8:K8,M8").ClearContents
If Range("M9").Value = 3 Then Range("B9:C9,E9:K9,M9").ClearContents
If Range("M10").Value = 3 Then Range("B10:C10,E10:K10,M10").ClearContents
If Range("M11").Value = 3 Then Range("B11:C11,E11:K11,M11").ClearContents
If Range("M13").Value = 3 Then Range("B13:C13,E13:K13,M13").ClearContents
If Range("M14").Value = 3 Then Range("B14:C14,E14:K14,M14").ClearContents
If Range("M15").Value = 3 Then Range("B15:C15,E15:K15,M15").ClearContents
If Range("M16").Value = 3 Then Range("B16:C16,E16:K16,M16").ClearContents
If Range("M17").Value = 3 Then Range("B17:C17,E17:K17,M17").ClearContents
' usw
Ansatz 2:
Private Timer As Boolean
Sub starten()
Timer = True
zeit = Time + TimeSerial(0, 0, 3)
Application.OnTime zeit, "generate_meldung"
End Sub
Sub generate_meldung()
MsgBox "Zeile wird gelöscht!"
If Timer = True Then starten
End Sub Sub beenden()
Timer = False
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("M7").Value = 3 Then Range("B7:C7,E7:K7,M7").ClearContents
If Range("M8").Value = 3 Then Range("B8:C8,E8:K8,M8").ClearContents
If Range("M9").Value = 3 Then Range("B9:C9,E9:K9,M9").ClearContents
If Range("M10").Value = 3 Then Range("B10:C10,E10:K10,M10").ClearContents

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nach Ablauf eines Zeitglieds führe Aktion aus
23.03.2015 07:06:57
Hajo_Zi
Ausführung für 30 Sekunden unterbrechen
eine Alternative wäre
Application.Wait now + TimeSerial(0, 0, 30)
´

AW: Nach Ablauf eines Zeitglieds führe Aktion aus
24.03.2015 16:02:20
Daniel
Vielen Dank,
du hast den Kern der Problematik mit einem Satz gelöst!
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige