Datum und Uhrzeit formatieren

  • Hallo!


    Irgendwie finde ich nicht das Richtige.


    Ich möchte Datum und Uhrzeit formatieren. Aus Samstag, 16. September 2023 soll YYYYMMDD werden. Aus 13:08:00 soll hhmmss werden. Die Felder werden mit GUICtrlCreateDate erzeugt. Welche der vielen Funktionen muss ich nehmen? Einiges aus dem Netz habe ich probiert, das gewünschte Ergebnis bekomme ich damit nicht.


    Code
               Global $vcalDateBeginn = GUICtrlCreateDate("", 225, 300, 200, 20)
               Global $vcalTimeBeginn = GUICtrlCreateDate("", 440, 300, 100, 20, $DTS_TIMEFORMAT)


    Danke!


    Gruß, René

  • Also in der Hilfe habe ich das gefunden und wenn Du das Forum befragst (Suchfunktion) sind einige Bsp.'s zu finden, wie Du das Datum in die von Dir gewünschte Reihenfolge bekommst.

    C
    #include <Date.au3>
    #include <MsgBoxConstants.au3>
    
    ; Show current date/time in the pc's format
    MsgBox($MB_SYSTEMMODAL, "Pc Long format", _DateTimeFormat(_NowCalc(), 1))
    MsgBox($MB_SYSTEMMODAL, "Pc Short format", _DateTimeFormat(_NowCalc(), 2))

    WICHTIG ! ! !
    Die Hilfe gibst es auch in einer deutsche Datei !!!

    ...... Lieben Gruß, ........
    ...........
    Alina ............

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Ich habe die Deutsche Hilfe auf meinem PC und
    OrganizeIncludes ist beim Scripten mein bester
    Freund. Okay?

  • Warum benutzt Du nicht das SHORTDATEFORMAT? Damit geht das einfacher:

    P.S.: Es wäre schön, wenn Du zukünftig wenigstens ein funktionsfähiges Beispielscript posten würdest. Nicht jeder Helfer ist gewillt, erstmal ein Beispiel zu schreiben.

  • Die Befehle @MDAY @MON @YEAR @HOUR @MIN @SEC

    liefern Dir die einzelnen Komponenten zu "Datum" zusammensetzen ist dann nur noch "Kleinkram"


    $datum = @MDAY & '/' & @MON &'/' & @YEAR & ' ' & @HOUR & ':' & @MIN & ':' & @SEC


    Zum rechnen mit Datum empfehle ich dringend day of the year!!!



    Peter

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Albert Einstein)

  • Moin,


    das leicht abgewandelte Beispiel #3 aus der Hilfe zu GUICtrlCreateDate:

  • Zum rechnen mit Datum empfehle ich dringend day of the year!!!

    Ich möchte ja nicht rechnen, sondern Datum und Uhrzeit auslesen und formatieren. Ich lese aus Datumfeld und Uhrzeitfeld aus, diese sollen in vCalendar-Daten (Datum Beginn, Uhrzeit Beginn, Datum Ende, Uhrzeit Ende) eingetragen werden (so wie man z.B. auch in Outlook Termine erstellt). Ich baue gerade meinen Excel-QR-Code-Generator in AutoIt nach. Alles funktioniert, bis auf die Datum-/Zeit-Formatierung.



    das leicht abgewandelte Beispiel #3 aus der Hilfe zu

    Danke! Beim Datum passt es. Aber bei der Uhrzeit wandelt er in das 12-Stunden-Format um, ich brauche aber 24-Stunden-Format.

  • Code
    $style = "yyyy/MM/dd HH:mm:ss"; This sets the hours to 24 hour format.  Capitol HH's mean 24 hour format.

    Also bei mir geht das. Prüf doch mal Deine klein und Grossschreibung


    Peter


    Ps.: Ich kann lesen - das mit dem day of the year war der Tip am Rande. Wer sich mit Datum beschäftigt - muss oft auch damit rechnen

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Albert Einstein)

  • Prüf doch mal Deine klein und Grossschreibung

    Danke! Immer diese Kleinigkeiten. AutoIt ist eben nicht VBA, da ist vieles anders. ;) Wie setze ich die Auswahlfelder hinterher wieder zurück (kann, ja sein, dass im Anschluß ein weitere vCal-QR-Code erstellt werden)? Oder kann ich $DTM_SETFORMATW auch in einem String nutzen?