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

Makro zu bestimmten Uhrzeiten ausführen?

Makro zu bestimmten Uhrzeiten ausführen?
07.05.2006 14:24:53
Oliver
Hallo Leute,
irgendwie stehe ich auf dem Schlauch. Ich möchte über ein Makro realisieren, dass immer zu bestimmten Zeiten eine bestimmte Zelle markiert wird. Allerdings nicht in Form alle 15 Minuten, sondern immer zu festen Zeiten. Also um 10:00 soll die Zelle A5 markiert werden, um 10:15 die Zelle A6, um 10:30 die Zelle A7, um 10:45 Zelle A8 usw. bis 20:00 und Zelle 45. Ich weiß, dass das über die OnTime-Anweisung realisierbar ist, nur weiß ich nicht so genau wie. Kann mir dabei jemand unter die Arme greifen? Wäre super.
Danke schon mal im Voraus,
Oliver S.

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro zu bestimmten Uhrzeiten ausführen?
07.05.2006 15:13:21
Ramses
Hallo
willst du nebenbei in der Tabelle arbeiten ?
Gruss Rainer
AW: Makro zu bestimmten Uhrzeiten ausführen?
07.05.2006 15:43:11
Oliver
Hallo Reiner,
ja eigentlich schon. Ich habe zwischenzeitlich noch etwas rumporbiert und bis jetzt ist folgendes Makro herausgekommen:


Sub Aktuelle_Zeit_anspringen()
Stunde = Hour(Now) + 1
Zeit = Format(Stunde & ":" & "00", "HH:MM")
If Stunde = 10 Then Zeile = 5
If Stunde = 11 Then Zeile = 9
If Stunde = 12 Then Zeile = 13
If Stunde = 13 Then Zeile = 17
If Stunde = 14 Then Zeile = 21
If Stunde = 15 Then Zeile = 25
If Stunde = 16 Then Zeile = 29
If Stunde = 17 Then Zeile = 33
If Stunde = 18 Then Zeile = 37
If Stunde = 19 Then Zeile = 41
If Stunde = 20 Then Zeile = 45
If Zeile > 0 Then
With ActiveSheet
.Unprotect
.Cells(Zeile, 1).Select
.Protect
End With
ActiveWindow.ScrollRow = Selection.Row - 2
End If
Application.OnTime TimeValue(Zeit), "Aktuelle_Zeit_anspringen"
End Sub


Nur hier wird im Moment das ganze jede volle Stunde abgearbeitet. Wie ich das mit den Minuten hinbekomme, weiß ich noch nicht. Denn wenn ich die Minuten auswerte und dann immer 15 Minuten dazu addiere, funktioniert das nicht.
Hast Du da eine Lösung für mich?
Danke Dir auf jeden Fall schon mal für Deine Antwort.
Gruß,
Oliver S.
Anzeige
AW: Makro zu bestimmten Uhrzeiten ausführen?
07.05.2006 18:19:02
Ramses
Hallo
gestartet wird das ganze mit dem Makro "Start_Time_Check"
Option Explicit

Dim intHour As Integer
Dim intMinute As Integer

Sub Start_TimeCheck()
    Select Case Minute(Now)
        Case Is <= 15
            intMinute = 0
        Case Is <= 30
            intMinute = 1
        Case Is <= 45
            intMinute = 2
        Case 0
            intMinute = 3
    End Select
    intHour = Hour(Now)
    Select_Time_Row
End Sub
Sub Select_Time_Row()
    'Zeile berechnen
    Dim Zeile As Integer
    Select Case intHour
        Case 10
            Zeile = 5 + intMinute
        Case 11
            Zeile = 9 + intMinute
        Case 12
            Zeile = 13 + intMinute
        Case 13
            Zeile = 17 + intMinute
        Case 14
            Zeile = 21 + intMinute
        Case 15
            Zeile = 25 + intMinute
        Case 16
            Zeile = 29 + intMinute
        Case 17
            Zeile = 33 + intMinute
        Case 18
            Zeile = 37 + intMinute
        Case 19
            Zeile = 41 + intMinute
        Case 20
            Zeile = 45 + intMinute
    End Select
    'Minute neu berechnen
    Select Case Minute(Now)
        Case Is <= 15
            intMinute = 0
        Case Is <= 30
            intMinute = 1
        Case Is <= 45
            intMinute = 2
        Case 0
            intMinute = 3
    End Select
    intHour = Hour(Now)
    If Zeile > 0 Then
        With ActiveSheet
            .Unprotect
            .Cells(Zeile, 1).Select
            .Protect
        End With
        ActiveWindow.ScrollRow = Selection.Row - 2
    End If
    Application.OnTime TimeSerial(intHour, intMinute * 15, 0), "Select_Time_Row"
End Sub


Ich gehe davon aus, dass die 15 Minuten-Prüfung in den Zeilen dazwischen erfolgt.
Gruss Rainer
Anzeige
AW: Makro zu bestimmten Uhrzeiten ausführen?
07.05.2006 15:43:20
Oliver
Hallo Reiner,
ja eigentlich schon. Ich habe zwischenzeitlich noch etwas rumporbiert und bis jetzt ist folgendes Makro herausgekommen:


Sub Aktuelle_Zeit_anspringen()
Stunde = Hour(Now) + 1
Zeit = Format(Stunde & ":" & "00", "HH:MM")
If Stunde = 10 Then Zeile = 5
If Stunde = 11 Then Zeile = 9
If Stunde = 12 Then Zeile = 13
If Stunde = 13 Then Zeile = 17
If Stunde = 14 Then Zeile = 21
If Stunde = 15 Then Zeile = 25
If Stunde = 16 Then Zeile = 29
If Stunde = 17 Then Zeile = 33
If Stunde = 18 Then Zeile = 37
If Stunde = 19 Then Zeile = 41
If Stunde = 20 Then Zeile = 45
If Zeile > 0 Then
With ActiveSheet
.Unprotect
.Cells(Zeile, 1).Select
.Protect
End With
ActiveWindow.ScrollRow = Selection.Row - 2
End If
Application.OnTime TimeValue(Zeit), "Aktuelle_Zeit_anspringen"
End Sub


Nur hier wird im Moment das ganze jede volle Stunde abgearbeitet. Wie ich das mit den Minuten hinbekomme, weiß ich noch nicht. Denn wenn ich die Minuten auswerte und dann immer 15 Minuten dazu addiere, funktioniert das nicht.
Hast Du da eine Lösung für mich?
Danke Dir auf jeden Fall schon mal für Deine Antwort.
Gruß,
Oliver S.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige