Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1416to1420
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
Inhaltsverzeichnis

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

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

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige