Datum errechnen anhand Tagnummer und Jahr

  • Ich bitte um Hilfe! Wie kann mann mit der Nummer des Tages, also der 12. Januar = 12, der 18. Februar = 49 (31+achtzehn), der 25. März = 85 (31+29+25, also im Schaltjahr) usw. und das Jahr der Datum errechnen? Ich programmiere einen Funktion wobei ich Tagnummer und Jahreszahl angebe und das Datum als xx.xx.xxxx zurück erhalte aber es gelingt bis jetzt nicht obwohl ich viel herumprobiere... ;(

    Programmieren ist ein bisschen Wissenschaft und viel Spass! :)

  • beschreibt dein problem doch noch etwas genauer was willst du machen ich hab es nicht ganz verstanden?

    das akuelle datum erhältst du mit makros die autoit schon bereitstellt

    Edit: achso du willst einfach eine zahl eingeben z.b 110 und wissen was das für ein datum des jeweiligen jahres war bzw. ist ??

    Das finden von Rechtschreibfehlern muss sofort und unverzüglich dem Autor gemeldet werden. Das eigennützige Verwenden dieser Rechtschreibfehler ist strengstens untersagt und kann mit Freiheitsenzug bestraft werden.

  • probier mal so:

    [autoit]

    #include <Date.au3>

    [/autoit][autoit][/autoit][autoit]

    Dim $Y, $M, $D, $Date, $dateadd = 4

    [/autoit][autoit][/autoit][autoit]

    $Date = _DayValueToDate(_DateToDayValue(@YEAR, 1, 1) -1 + $dateadd, $Y, $M, $D)

    [/autoit][autoit][/autoit][autoit]

    MsgBox(4096, "", "Datum: " & $D & "." & $M & "." & $Y)

    [/autoit]

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    über mich...

    ich habe meine Erfahrungen hauptsächlich gesammelt in (grobe Übersicht):

    - RibbonBar Automation
    - MySQL Nutzung
    - GUIs in vielerlei Ausprägung
    - Nutzung von Powershell / Batch in AutoIt
    - Windows Automatisierung

    außerhalb von AutoIt:

    - Sprachen: PS, Batch, php, html(5), javascript, (perl eingeschränkt), vbs
    - Powershell (AD, WPF inkl. Multi-Threading, ...)
    - Deployment-Automatisierung ohne SCCM
    - Office-Nutzung mit COM-Object (AutoIt, PowerShell)
    - ActiveDirectory und alles was damit zusammenhängt
    - Hyper-V Clustering (Converged / Hyper Converged)
    - Serverhardware (Konfiguration, Aufbau, Architektur, Betrieb)

    Lieblingsthema:

    günstige Automatisierung von Vorgängen, für die andere Firmen viel Geld nehmen

    more to come ...

  • Edit: achso du willst einfach eine zahl eingeben z.b 110 und wissen was das für ein datum des jeweiligen jahres war bzw. ist ??

    Genau! Die angegebene Zahl sind die Anzahl der Tage die von dem Jahr schon vorbei sind (entschuldige mein Deutsch...). Also diese Zahl muss zwischen 1 und 366 liegen.

    Programmieren ist ein bisschen Wissenschaft und viel Spass! :)

  • noch etwas erweitert...

    [autoit]

    #include <Date.au3>
    Dim $Y, $M, $D, $Date

    [/autoit][autoit][/autoit][autoit]

    Dim $dateadd = 4; Tag des Jahres
    Dim $dateyear = 2010; Jahr

    [/autoit][autoit][/autoit][autoit]

    _DayValueToDate(_DateToDayValue($dateyear, 1, 1) -1 + $dateadd, $Y, $M, $D)
    MsgBox(4096, "", "Datum: " & $D & "." & $M & "." & $Y)

    [/autoit]

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    über mich...

    ich habe meine Erfahrungen hauptsächlich gesammelt in (grobe Übersicht):

    - RibbonBar Automation
    - MySQL Nutzung
    - GUIs in vielerlei Ausprägung
    - Nutzung von Powershell / Batch in AutoIt
    - Windows Automatisierung

    außerhalb von AutoIt:

    - Sprachen: PS, Batch, php, html(5), javascript, (perl eingeschränkt), vbs
    - Powershell (AD, WPF inkl. Multi-Threading, ...)
    - Deployment-Automatisierung ohne SCCM
    - Office-Nutzung mit COM-Object (AutoIt, PowerShell)
    - ActiveDirectory und alles was damit zusammenhängt
    - Hyper-V Clustering (Converged / Hyper Converged)
    - Serverhardware (Konfiguration, Aufbau, Architektur, Betrieb)

    Lieblingsthema:

    günstige Automatisierung von Vorgängen, für die andere Firmen viel Geld nehmen

    more to come ...

  • noch etwas erweitert...

    [autoit]

    #include <Date.au3>
    Dim $Y, $M, $D, $Date

    [/autoit] [autoit][/autoit] [autoit]

    Dim $dateadd = 4; Tag des Jahres
    Dim $dateyear = 2010; Jahr

    [/autoit] [autoit][/autoit] [autoit]

    _DayValueToDate(_DateToDayValue($dateyear, 1, 1) -1 + $dateadd, $Y, $M, $D)
    MsgBox(4096, "", "Datum: " & $D & "." & $M & "." & $Y)

    [/autoit]


    man da war ich wieder zu langsam :D aber ich hatte fast das gleiche

    Das finden von Rechtschreibfehlern muss sofort und unverzüglich dem Autor gemeldet werden. Das eigennützige Verwenden dieser Rechtschreibfehler ist strengstens untersagt und kann mit Freiheitsenzug bestraft werden.

  • oder als Funktion:

    [autoit]

    #include <Date.au3>
    MsgBox(4096, "", _DatefromDayofYear(47,2009))

    [/autoit][autoit][/autoit][autoit]

    Func _DatefromDayofYear($dayadd,$Year) ; benötigt Date.au3 !!!
    Local $Y, $M, $D
    _DayValueToDate(_DateToDayValue($Year, 1, 1) -1 + $dayadd, $Y, $M, $D)
    Return($D & "." & $M & "." & $Y)
    EndFunc

    [/autoit]

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    über mich...

    ich habe meine Erfahrungen hauptsächlich gesammelt in (grobe Übersicht):

    - RibbonBar Automation
    - MySQL Nutzung
    - GUIs in vielerlei Ausprägung
    - Nutzung von Powershell / Batch in AutoIt
    - Windows Automatisierung

    außerhalb von AutoIt:

    - Sprachen: PS, Batch, php, html(5), javascript, (perl eingeschränkt), vbs
    - Powershell (AD, WPF inkl. Multi-Threading, ...)
    - Deployment-Automatisierung ohne SCCM
    - Office-Nutzung mit COM-Object (AutoIt, PowerShell)
    - ActiveDirectory und alles was damit zusammenhängt
    - Hyper-V Clustering (Converged / Hyper Converged)
    - Serverhardware (Konfiguration, Aufbau, Architektur, Betrieb)

    Lieblingsthema:

    günstige Automatisierung von Vorgängen, für die andere Firmen viel Geld nehmen

    more to come ...

  • Vielen Dank !! Ihr habt mir sehr geholfen. Es gilt wie immer: "hätte selbst drauf kommen können..." ;)

    Programmieren ist ein bisschen Wissenschaft und viel Spass! :)