Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Uhrzeit einfügen

Forumthread: Uhrzeit einfügen

Uhrzeit einfügen
11.04.2024 01:28:07
Holger
Hallo Zusammen,

ich würde gerne über eine "wenn dann" Formel die Uhrzeit als Makro starten.
Wäre es auch möglich, dass die Uhrzeit sich nicht akualliersiert, nur die Momentuhrzeit, welche in die Zelle kopiert wird

Wäre super, wenn mir Jemand dabei helfen könnte. Komme leider nicht weiter.
Habe es über Makrostart probiert, da bekomme ich immer einen Fehler "Wert" angezeigt.
=WENN(BA3=1;MakroStart();"Nix")

Danke euch.

Gruß
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Uhrzeit einfügen
11.04.2024 01:32:04
Onur
"die Uhrzeit als Makro starten" ? Du willst die Uhrzeit starten ?
AW: Uhrzeit einfügen
11.04.2024 10:17:07
Holger
Hallo Onur

Hoffe mein Anliegen war jetzt nicht totall ungwöhlich.
Es ist eine Tabelle, welche dazu dienen soll, nach z. B. 90 min eine bedingte Formatierung auszulösen soll.

Dafür brauche ich die Startzeit. Endzeit ist nicht das Problem.
Problem ist halt das die Startzeit nicht fix bleibt, welche ich generiere, sondern immer mit läuft und dadurch nicht den Wert errechnen kann.

Gruß
Holger
Anzeige
AW: Uhrzeit einfügen
11.04.2024 08:17:46
MCO
Moin!

Wenn du ein Makro automatisch starten möchtest, dann musst du das über die Ereignisse regeln.

Mit ALT+F11 in den Editor, dann auf die Tabelle doppelklicken, in der BA1 ist,

mit dem Sheet.change- Ereignis:
Private Sub Worksheet_Change(ByVal Target As Range)

If Range("BA1").Text = 1 Then MakroStart
End Sub


Versuch es mal.
Gruß, MCO
Anzeige
AW: Uhrzeit einfügen
11.04.2024 10:22:29
Holger
Hallo MCO,

dankeschön für deine Antwort.
Das funktioniert soweit auch, nur mein Makro "jetzt" nimmt diese nicht an.
Andere Makros funktionieren komischerweise mit If Range("BA1").Text = 1 Then MakroStart, aber diese nicht:

Sub jetzt()

Range("BB3").Select
Zeit = Right(Now(), 8)
ActiveCell.FormulaR1C1 = Zeit

End Sub

Gruß
Holger
Anzeige
AW: Uhrzeit einfügen
11.04.2024 11:01:29
hary
Moin
Du musst schon den Makronamen nehmen.
Private Sub Worksheet_Change(ByVal Target As Range)

If Range("B1") = 1 Then jetzt
End Sub

Dein jetzt Makro braucht nur eine Zeile:
Sub jetzt()

Range("B3") = Time
End Sub

Koentest du also auch so schreiben:
Private Sub Worksheet_Change(ByVal Target As Range)

If Range("B1") = 1 Then Range("B3") = Time
End Sub


Sollte (wenn keine 1 drin steht) auch nix drin stehn dann:
Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("B1")) Is Nothing Then
Range("B3") = IIf(Range("B1") = 1, Time, "")
End If
End Sub

gruss hary
Anzeige
AW: Uhrzeit einfügen
11.04.2024 11:24:43
Holger
Habe ich jetzt genauso gemacht, Uhrzeit läuft rein.
Nur die Tabelle schließt sich danach und startet neu.

Gruß
AW: Uhrzeit einfügen
11.04.2024 11:24:28
MCO
Hallo Holger!

Dein Makro würde reduziert so aussehen:
Sub jetzt()

Range("BB3").value = "'" & Right(Now(), 8)
End Sub


Da es aber nur noch 1 Zeile ist, kannst du es auch statt dem Makro-Aufruf direkt schreiben lassen:

If Range("BA1").Text = 1 Then Range("BB3").value = "'" & Right(Now(), 8)


Gruß, MCO
Anzeige
AW: Uhrzeit einfügen
11.04.2024 12:30:15
Holger
Hallo MCA

Vielen Dank für deine Hilfe, mit der Uhrzeit klappt das jetzt.
Aber, wenn man in N8 etwas eingibst, damit in BA3 eine 1 drin steht, dann startet sich das Blatt sofort neu.
Kann ich mir nicht erklären, dachte viellicht etwas wegen Blattschutz, aber auch nicht.

https://www.herber.de/bbs/user/168646.xlsm
pw: meins

Gruß
Anzeige
AW: Uhrzeit einfügen
12.04.2024 13:04:25
Oppawinni
ach da gibt es wohl schon einen Folge-Thread, aber vielleicht willst du das auch mal so probieren:
Du schreibst in ein allgemeines Modul
Option Explicit


Dim gTimeSet As Date
Dim gOldSwitch As Double

Public Function myDependendTime(switch As Double) As Date

If gOldSwitch > switch Then
gOldSwitch = switch
If switch = 1 Then
gTimeSet = Time
End If
End If

myDependendTime = gTimeSet

End Function


und setzt dann in eine Zelle die Formel
=myDependendTime(BA3)
dann bekommt die entsprechende Zelle immer dann die aktuelle Zeit, wenn BA3 auf den Wert 1 wechselt.
Du kannst die Funktion aber sinnvoll nur bezogen auf EINE bestimmte Zelle verwenden.
also nicht irgendwo noch =myDependendTime(BA4) oder ähnliches, weil ja immer gegen die gleichen globalen Variablen geprüft wird.
Keine Ahnung ob dir die (böse) Krücke helfen könnte.
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige