Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Eintragen einer Zeit begrenzen
#1
Guten Tag, 

ich habe ein Userform erstellt mit vielen Daten die Dort eingetragen werden müssen um diese dann in Excel zu speichern.

Das funktioniert alles wie ich das will. 

Nun hab ich das Problem das ich in dem Feld das Datum mit ( Me.Datum.Value = Format(Now, "dd.mm.yyyy") und im Zeitfeld mit ( Me.Uhrzeit.Value = Format(Now, "hh:mm") automatisch eintragen lasse. 

das die Leute die nach dem Tageswechsel nach 00:00 Uhr alles schon mit dem neuen Tag und Uhrzeit eintragen.

Als Beispiel:

Am Montag den 11.01.22 um 22Uhr trägt füllt einer das Userform aus. Soweit super.
Am Dienstag den 12.01.22 um 00:10 trägt ein weiterer das Userform aus.  Diese Einträge möchte ich gern mit dem vorherigen Datum (11.01.22) und 23:59 eintragen lassen.
Antworten Top
#2
Hallo,

du solltest einen Grenzwert definieren, bis zu dem noch rückdatiert werden soll!
Als Bsp. gibt du 0:10 an. Was ist denn mit 2:45, 4:53, 5:58, etc. ?

Gruß Sigi
Antworten Top
#3
Hallo 

so in etwa?

Code:
Sub test()
    Dim Zeit As String, Datum As String, Zgrenze As Date
   
    Zgrenze = "04:00"

    If Time < Zgrenze Then
        Datum = Date - 1
        Zeit = TimeValue("23:59")
    Else
        Datum = Format(Date, "DD.MM.YYYY")
        Zeit = Format(Time, "hh:mm")
    End If
End Sub


LG UweD
Antworten Top
#4
diese Zeiten sollten auch rückdatiert werden. Ab 6 Uhr soll dann der akutelle Tag genommen werden.

Wie baue ich das in meinen OK Button ein?

Code:
Private Sub OKButton_Click()
ActiveSheet.Unprotect 369
Dim WkSh         As Worksheet
   Set WkSh = Worksheets("Tabelle1") 'Zuordnung der Adressen-Tabelle
With Range("A1").End(xlDown).Offset(1, 0)
    .Value = DatumBox
    .Offset(0, 0) = Datum
    .Offset(0, 1) = Uhrzeit
    End With
ActiveSheet.Protect 369
ActiveWorkbook.Close SaveChanges:=True
Application.DisplayAlerts = False
Application.Quit
End Sub
Antworten Top
#5
Hallöchen,

Du ermittelst Datum und Uhrzeit bisher ja irgendwo anders? Beide variablen werden nicht in Deinem Button-Makro gefüllt. Daher wäre es ggf. besser, den Code dort einzubauen wo Du die Variablen momentan füllst.
Ansonsten, baue den Code einfach am Anfang des Button-Makros ein.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste