Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
528to532
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
528to532
528to532
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datum zeitabhängig eintragen

Datum zeitabhängig eintragen
08.12.2004 08:04:30
Harald
Hallo Forum,
für die tägliche Erfassung von Meßwerten habe ich für unsere Produktionslinie eine Datei erstellt. Um zu vermeiden, dass bei aufkommender Hektik für einen Tag doppelt eingetragen wird, frage ich mit diesem Schnipsel ab, ob für diesen Tag nicht schon ein Eintrag existiert.
datum = ActiveCell.Offset(-1, -1).Value
If datum = Date Then
MsgBox "Zu diesem Datum gibt es bereits einen Eintrag !"
ActiveSheet.Protect "schutz"
Exit Sub
End If
Mit folgendem Code wird bei Eingabe das Datum erzeugt.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim RaBereich As Range, RaZelle As Range
Set RaBereich = Range("C14:Z14")
Application.EnableEvents = False
For Each RaZelle In Range(Target.Address)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then RaZelle.Offset(-1, 0) = Date
Next RaZelle
Application.EnableEvents = True
Set RaBereich = Nothing
End Sub

Und dort besteht das Problem für den 3-Schichtbetrieb explizit für die Nachtschicht. Schichtbeginn ist 22.00 Uhr. Werden die Daten immer vor Mitternacht eingegeben, ist das kein Problem. Werden die Daten nach Mitternacht eingegeben, wird das Datum das Folgetages erzeugt und das bringt ein Problem, wenn in der nächsten Nachtschicht die Daten vor Mitternacht eingegeben werden. Denn dieses Datum hat er ja schon.
D.h. für die Zeit von Mitternacht bis Schichtende 06.00 Uhr muss das Datum vom Vortag eingetragen werden.
Hoffe die Fragestellung ist verständlich und ihr könnt helfen.
Gruß
Harald

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum zeitabhängig eintragen
UweD

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim RaBereich As Range, RaZelle As Range
Set RaBereich = Range("C14:Z14")
Application.EnableEvents = False
For Each RaZelle In Range(Target.Address)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
If Time <= "06:00:00" Then
Datum = Date - 1
Else
Datum = Date
End If
RaZelle.Offset(-1, 0) = Datum
End If
Next RaZelle
Application.EnableEvents = True
Set RaBereich = Nothing
End Sub

So gehts.
Gruß aus Siegen, UweD
Bestens
08.12.2004 08:40:21
Harald
Danke Uwe
Gruß aus dem Saarland
AW: Datum zeitabhängig eintragen
Ramses
Hallo
Ohne deine etwas eigenwilligen Prüfmethoden zu kommentieren ;-) probier mal folgendes
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
If Format(Now, "hh:mm") > TimeSerial(22, 0, 0) Or Format(Now, "hh:mm") RaZelle.Offset(-1, 0) = Date
End If
End If
Gruss Rainer
Anzeige
AW: Datum zeitabhängig eintragen
08.12.2004 08:56:45
Harald
Moin Rainer,
vielen Dank für deinen Vorschlag und.....
hast ja Recht. Meine selbsterstellten Codes verleiten den geneigten Profi doch eher zum Grinsen.
Mit vba- Schnupperkurs ist zumindest bei mir die Fahnenstange schnell zu Ende ;-))
Bin aber gerne bereit, einen guten Vorschlag anzunehmen, wenn dir spontan eine ansehnlichere Lösung für die Prüfung einfällt.
Gruß von der Saar
Harald
Dein Vorschlag bezüglich Datum bringt jedoch nicht das gewünschte Resultat.
Probiert hab ich bei gleichem Datum die folgenden Uhrzeiten (05:40 Uhr und 22:43 Uhr).
In beiden Fällen trägt er mir den 08.12. ein.
Für 05:40 Uhr sollte der 07.12. eingetragen werden ( also -1).
Der Vorschlag von Uwe läuft und den werd ich wohl auch umsetzen.
Anzeige
AW: Datum zeitabhängig eintragen
Ramses
Hallo
das funktioniert schon ;-),.... Allerdings bin ich davon ausgegangen, dass
A: Die Prüfung ob bereits ein Eintrag existiert vorher gemacht wurde
B: Die Datei um 22:00 zur bearbeitung geöffnet wird
Anyway, Der Vorschlag von Uwe ist elegant und funktioniert automatisch richtig ;-)
Gruss Rainer
AW: Datum zeitabhängig eintragen
08.12.2004 09:49:26
Harald
However Rainer,
deine Mühe war ja nicht umsonst und der Schnipsel ist schon in meine (mittlerweile recht umfangreiche) Sammlung von Schnipsel, die sehr hilfreich sein können, reinkopiert.
Nochmals Danke
Harald

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige