Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1608to1612
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

Timer erstellen

Timer erstellen
16.02.2018 14:39:56
Florian
Hallo zusammen,
ich bin es nochmal. Nach der letzten Hilfe von euch habe ich nun die nächste Frage an euch.
Ich bearbeite immer noch das Einsatzstellen Protokoll und möchte es weiter verbessern.
Mein Anliegen:
Ich möchte gerne einen Timer hinzufügen. Folgendes soll passieren:
Wenn ich in Zelle X eine Uhrzeit eintrage soll automatisch ein Timer starten der mir nach 10 min signalisiert das ich etwas machen muss. Danach soll er mich nach weitren 10 min (20 min vom Zeitpunkt null) nochmals erinnern.
Meine Frage:
Ist dies überhaupt möglich mit Excel? Habe in den Steuerelementen leider nichts gefunden.
Gruß
Flo

20
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Timer erstellen
16.02.2018 14:59:03
ChrisL
Hi Flo
Modul Tabelle1

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "A1" And Target  "" And Target.Text Like "?:?" Then
Application.OnTime Now() + TimeSerial(0, 10, 0), "Makro1"
End If
End Sub
Standardmodul:

Sub Makro1()
MsgBox "Meldung1"
Application.OnTime Now() + TimeSerial(0, 10, 0), "Makro2"
End Sub

Sub Makro2()
MsgBox "Meldung2"
End Sub

cu
Chris
AW: Timer erstellen
16.02.2018 15:11:33
Florian
Hallo Chris,
danke für die schnelle Antwort. Könntest du mir noch kurz helfe, wie ich was genau ausfüllen muss?
Anzeige
AW: Timer erstellen
16.02.2018 15:44:51
ChrisL
Hi Flo
Irgendwie selbsterklärend... A1 = Zelle, 10 = Minuten, Meldung = Meldung
cu
Chris
AW: Timer erstellen
16.02.2018 16:22:57
Florian
Hallo Chris,
Habe es Grade testen wollen leider kommt eine Fehlermeldung die mir nichts sagt
Sie lautet:
Mehrdeutiger Name: Worksheet_Change
Einfach den Namen ändern?
Hilft es dir wenn ich die Tabelle hochlade?
AW: Timer erstellen
16.02.2018 18:22:00
ChrisL
Hi
Datei ist immer ein gute Idee.
Pro Modul kann es nur ein Change-Ereignis geben. Dann musst du den Code dort rein kopieren.
cu
Chris
AW: Timer erstellen
17.02.2018 09:51:18
Oberschlumpf
Hi Florian,
basierend auf den Code von ChrisL habe ich dir mal eine Bsp-Datei erstellt.
Ich bin sicher, wenn du die Datei testest und dir meine Anmerkungen im Code durchliest, dass du dann besser verstehst, was genau ChrisL meint.
Außerdem habe ich den Code von ChrisL noch optimiert.
Er setzt 2 voneinander getrennte Subs ein, um 2 Wiederholungen zu erreichen (für die einfache Erklärung reicht das auch).
In meinem Code wird nur 1 S u b benötigt, die sich so oft selbst aufruft, bis die gewünschte und in meinem Code auch zwingende Angabe von Wiederholungen erreicht wird.
Hier, teste meine Datei
https://www.herber.de/bbs/user/119863.xlsm
Ich freue mich auf dein Feedback.
Ciao
Thorsten
Anzeige
AW: Timer erstellen
18.02.2018 07:27:29
Florian
Hallo Thortsen dir für den Code! Deine Datei funktioniert einwandfrei. Leider habe ich Probleme diesen Code zu übernehmen. Ich habe dir jetzt mal den Code kopiert damit du wenn du Zeit hast einmal nachschauen kannst.
Ich habe bereits eine Worksheet_Change drin. Habe nun deinen Code mit darein kopiert aber irgendwie klappt es nicht ganz. Schau doch bitte mal ob du damit was anfangen kannst. Gut kenne ich mich leider nicht mit den Code aus. Bin zur Zeit erst dabei mir einiges anzulesen.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3 And Target.Row > 4 Then
If Cells(Target.Row, 3)  "" Then
If Cells(Target.Row, 1) = "" Then
Target.Offset(0, -2) = Now
End If
Else
Target.Offset(0, -2) = ""
End If
'in Zelle A1 wird die Eingabe einer Uhrzeit erwartet
'das Format in A1 muss "hh:mm" sein
If Target.Address(0, 0) = "R2" And Target  "" And Target.Text Like "?:?" Then
'wegen Testzwecken habe ich die Wiederholungszeit auf nur 5 Sekunden gesetzt
'du musst natürlich wieder auf 10 Minuten ändern
Application.OnTime Now() + TimeSerial(0, 0, 5), "Makro1"
End If
End If
End Sub

Anzeige
AW: Timer erstellen
18.02.2018 08:44:46
Oberschlumpf
Moin Florian,
zeig uns bitte deine Datei per Upload.
Mach eine Kopie von deiner Originaldatei und stell sie hier per Upload zur Verfügung.
Wenn die Originaldatei Daten enthält, die nicht öffentlich gezeigt werden dürfen, dann schreib anstelle der Origialdaten irgendwelche Bsp-Daten rein.
Denn, ja, ich merke, dass du von VBA noch nicht viel verstehst. Aber ohne deine Datei wird es um so schwerer, dir alles so zu erklären, dass du es verstehst.
Ciao
Thorsten
AW: Timer erstellen
18.02.2018 08:50:19
Florian
Hallo Thorsten,
hier die Datei.
Zur Zeit ist eine Funktion drin womit ich automatisch neue Zeilen hinzufügen kann (Auch hier aus dem Forum)
Ich habe nun einfach das Logo und die beiden Tabellenblätter gelöscht. Auf den Tabellenblätter waren lediglich die Daten für die Dropdownlisten. Diese sind nicht notwendig für das was du vor hast denke ich.
Ich möchte in Zeile "OP3" oder evtl in einer neuen Zeile die Uhrzeit einfügen können. Nach 10 min soll die Meldung kommen das der "Angriffstrupp" nun 10 min unter Atemschutz ist.
Danke für deine Mühen bis jetzt.
Gruß
F
Flo
https://www.herber.de/bbs/user/119882.xlsm
Anzeige
AW: Timer erstellen
18.02.2018 08:49:29
Oberschlumpf
Hi Florian
einen Versuch mache ich, dir ne Code-Korrektur zu zeigen, ohne deine Datei.
Ersetze den von dir gezeigten Code durch diesen:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3 And Target.Row > 4 Then
If Cells(Target.Row, 3)  "" Then
If Cells(Target.Row, 1) = "" Then
Target.Offset(0, -2) = Now
End If
Else
Target.Offset(0, -2) = ""
End If
End If
'in Zelle A1 wird die Eingabe einer Uhrzeit erwartet
'das Format in A1 muss "hh:mm" sein
If Target.Address(0, 0) = "R2" And Target  "" And Target.Text Like "?:?" Then
'wegen Testzwecken habe ich die Wiederholungszeit auf nur 5 Sekunden gesetzt
'du musst natürlich wieder auf 10 Minuten ändern
Application.OnTime Now() + TimeSerial(0, 0, 5), "Makro1"
End If
End Sub

Wenn dieser Versuch nicht hilft, dann zeig uns deine Datei.
Ciao
Thorsten
Anzeige
AW: Timer erstellen
18.02.2018 09:17:34
Florian
Es klappt mit deinem Code. Jetzt verlassen mich aber meine Excel Kenntnisse. Ich habe extra die Zelle R2 genommen. Ich möchte aber das evtl eine Verbundene Zelle und zwar die Zelle OP3 genommen wird. Wie trage ich denn verbundene Zellen ein?
AW: Timer erstellen
18.02.2018 09:48:17
Oberschlumpf
was genau meinst du mit Zelle R2?
In deiner Datei wird die Zelle R2 gar nicht benutzt. Deine Tabelle geht nur bis Spalte P.
Und was meinst du mit OP3 ?
Die Spalte OP ist die 406. Spalte in deiner Datei.
Wie gesagt, deine Datei wird nur bis Spalte P genutzt. Und Spalte P ist die 16. Spalte.
Ich hab die Datei jetzt so angepasst, dass...
...in der Tabelle "Einsatzetellenprotokoll" bei Änderung in Spalte C (verbunden mit Spalte D), Überschrift "Melder", automatisch in Spalte A eine Uhrzeit eingetragen wird.
In dem Moment wird auch die Erinnerung aktiviert, die alle 5 Sekunden erscheint. (denk dran, du musst das noch auf 10 Minuten erhöhen)
Wenn du all das aber gar nicht in der Tabelle "Einsatzetellenprotokoll" sondern in der Tabelle "Atemschutzüberwachung" auslösen willst, dann hättest du das auch erwähnen müssen.
Hier, teste mal:
https://www.herber.de/bbs/user/119883.xlsm
Hilfts?
Ciao
Thorsten
Anzeige
AW: Timer erstellen
18.02.2018 09:53:27
Florian
Nein, es war schon richtig. Das soll alles in der Tabelle "Einsatzstellenprotokoll" passieren. Ich kopiere jetzt mal den Code in meine Tabelle und lade dir eine Neue Hoch. Dort habe ich nun parallel noch eine Zeile für meine Zwecke hinzugefügt.
AW: Timer erstellen
18.02.2018 10:03:03
Florian
So,
Jetzt habe ich das mal etwas angepasst und kann es dir auch besser erklären.
Die Meldung soll nur kommen wenn in der Zelle neben "Trupp hat PA anlegt" eine Uhrzeit eingetragen wird.
Die Zeilen für das Protokoll, sollen ignoriert werden.
Die Tabelle "Atemschutzüberwachung" kannst du auch ignorieren. Diese soll per hat geführt werden.
Was ich eben mit der Zelle OP meinte war, ich habe Zelle O und Zelle P verbunden. Dadurch war es für mich Zelle OP. Habe aber vergessen das Excel komplett durch geht bis Zelle XXX...
https://www.herber.de/bbs/user/119885.xlsm
Ich hoffe ich konnte mich jetzt besser ausdrücken und du verstehst was ich meine.
Gruß
und VIELEN DANK
Flo
Anzeige
AW: Timer erstellen
18.02.2018 11:02:55
Oberschlumpf
Hi Florian,
hier die von mir an Zelle P6 angepasste Datei:
https://www.herber.de/bbs/user/119887.xlsm
Jetzt wird die Erinnerung ausgelöst, sobald in Zelle P6 eine Uhrzeit im Format "hh:ss" eingegeben wurde.
Hinweis 1:
Meine Bemerkung "Du musst das Zeitintervall noch auf 10 Minuten erhöhen" war so gemeint, dass du das erst tun sollst, wenn alles funktioniert.
Oder ist es gewollt, so lange du noch am Testen bist, dass du jedes mal 10 Minuten warten musst, bis der Test weitergeht? :-)
Hinweis 2:
So bald der Wert in P6 wieder gelöscht oder geändert wird, könnte der zuerst ausgelöste Erinnungsalarm ja beendet werden.
Aber das konnte ich leider nicht lösen.
Wenn du also eine Lösung dafür suchst, wie man Application.OnTime wieder ausschalten kann, dann erstell bitte einen neuen Thread im Forum. Ich kann da leider nicht helfen.
Funktioniert denn die Datei jetzt wenigstens erst mal so, wie von dir gewünscht/erwartet?
Ciao
Thorsten
Anzeige
AW: Timer erstellen
18.02.2018 11:31:39
Florian
Sie funktioniert fast so wie ich es brauche. Leider bekomme ich nun immer folgenden Fehler wenn ich oben keine Zeit einfüge aber unten eine Zeile hinzufüge:
"Laufzeitfehler 13"
Typen unverträglich
AW: Timer erstellen
18.02.2018 11:36:15
Florian
Der Debugger markiert mir folgende Zeile:
If Target.Address = "$P$6" And Target "" And Target.Text Like "?:?" Then
muss evtl das "And Target " weg? Weil ich hab ja nur ein Target
AW: Timer erstellen
18.02.2018 12:10:32
Oberschlumpf
änder deinen Code

If Target.Address = "$P$6" And Target  "" And Target.Text Like "?:?" Then
'wegen Testzwecken habe ich die Wiederholungszeit auf nur 5 Sekunden gesetzt
'du musst natürlich wieder auf 10 Minuten ändern
Application.OnTime Now() + TimeSerial(0, 0, 5), "Makro1"
End If

um in

If Target.Row = 6 Then
If Target.Address = "$P$6" And Target  "" And Target.Text Like "?:?" Then
'wegen Testzwecken habe ich die Wiederholungszeit auf nur 5 Sekunden gesetzt
'du musst natürlich wieder auf 10 Minuten ändern
Application.OnTime Now() + TimeSerial(0, 0, 5), "Makro1"
End If
End If

Hilfts?
Anzeige
AW: Timer erstellen
18.02.2018 12:34:23
Florian
Sehr geil! Hilft perfekt!
Vielen vielen dank! Ich kann dir gar nicht genug danken :)
Jetzt ist es so wie ich mir das vorgestellt habe. Danke dir!
AW: Timer erstellen
18.02.2018 12:34:24
Florian
Sehr geil! Hilft perfekt!
Vielen vielen dank! Ich kann dir gar nicht genug danken :)
Jetzt ist es so wie ich mir das vorgestellt habe. Danke dir!
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen
Forumthread
Beiträge