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

Forumthread: Aktuelles Datum in Zelle

Aktuelles Datum in Zelle
14.01.2022 18:02:18
Kevin
Guten Abend liebe Gemeinde,
ich habe für eine Inputliste folgenden Code :

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Intersect(Range("B5:J15000"), Target) Is Nothing Then Exit Sub
ActiveSheet.Unprotect "test"
If Range("A" & Target.Row).Value = "" Then
Range("A" & Target.Row).Value = Date
Range("A" & Target.Row).NumberFormat = "dd/mm/yy"
End If
ActiveSheet.Protect "test"
End Sub
Bei einem Eintrag im Bereich soll das aktuelle Datum in A eingetragen werden. Nun eine kleines Problem was wir damit haben. 3 Schichten arbeiten mit dieser Liste und so passiert es immer in der Nachtschicht, dass das Datum vom nächsten Tag zu dem Eintrag erscheint ( da ja zu dem Zeitpunkt schon der nächste Tag angebrochen ist). Hat jemand eine Idee wie der Code angepasst werden kann, dass auch alle Einträge der Nachtschicht als Tag 1 weggeschrieben werden ?
Wir brauchen zu Auswertungszwecken immer den selben Produktionstag, da alle 3 Schichten zu einem Produktionstag gehören.
Hinweis : Nach allen Einträgen der Nachtschicht lassen wir immer eine Zellenreihe offen.
Liebe Grüße Kevin
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Aktuelles Datum in Zelle
14.01.2022 18:05:42
{Boris}
Hi,
dann muss man noch die aktuelle Uhrzeit prüfen. Bis wann geht denn die Nachtschicht?
Code sollte auch noch leicht überarbeitet werden, dazu aber mehr nach Deiner Antwort.
VG; Boris
AW: Aktuelles Datum in Zelle
14.01.2022 18:21:00
{Boris}
Hi,
teste mal folgenden Code. Der Konstanten lngHour weist Du die Stunde zu, bis zu der die Nachtschicht gilt (und somit das gestrige Datum eingetragen werden soll). Im Beispiel habe ich 4 vorgegeben - bedeutet: Bis 4:59h ist Nachschicht. Das musst Du anpassen.
Hab den Code auch bewusst etwas ausführlicher geschrieben.
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error GoTo ERR_EXIT
Const lngHour As Long = 4 'bis 4:59h ist Nachschicht
Dim myDate As Date
If Not Intersect(Target, Range("B5:J15000")) Is Nothing Then
With Target
If .Count = 1 Then
If Cells(.Row, 1) = "" Then
Application.EnableEvents = False
If Hour(Now) 
VG, Boris
Anzeige
AW: Aktuelles Datum in Zelle
14.01.2022 19:56:31
onur
Nur die fettgedruckten Zeilen ändern - das genügt:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim FSab
FSab = TimeValue("06:00") 'Bei Nachtschicht bis 05:59 Uhr
If Intersect(Range("B5:J15000"), Target) Is Nothing Then Exit Sub
ActiveSheet.Unprotect "test"
If Range("A" & Target.Row).Value = "" Then
Range("A" & Target.Row).Value = Date - FSab
Range("A" & Target.Row).NumberFormat = "dd/mm/yy"
End If
ActiveSheet.Protect "test"
End Sub

Anzeige
AW: Aktuelles Datum in Zelle
14.01.2022 20:17:34
Kevin
Danke ihr beide ! Unsere Nachtschicht geht übrigens bis 5:00 Uhr morgens, also muss ich nix anpassen.
Der Hammer wie ihr solche Sachen immer so schnell raushaut !
Grüße Kevin
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
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