exe Datei die eine Datumsberechnung durchführt
Hallo adminstratoren ! 
ich bin neu hier und deswegen eventuell noch etwas unbeholfen aber ich versuche mein Problem best möglichst dazustellen.
also:
ich muss das aktuelle systemdatum in ein sogenanntes juliansches datum umwandeln also aus 27.07.2009 (tt.mm.jjjj) wird 9208 (j.gezählte tage)
das ganze konnte ich nun schon mit einer excel funktion berechnen aber nun kommt mein problem es soll ohne excel funktionieren am besten gepackt in eine exe datei! das der user nur eine exe datei anklicken muss wo so etwas wie eine messagebox aufpopt mit dem gewandelten datum.
nun hab ich leider noch nie außerhalb von programmen programmiert (vba in access usw.)
könnte mir da jemand weiterhelfen der das schon des öfteren mal gemacht hat ?
danke schonmal im vorraus
ich bin neu hier und deswegen eventuell noch etwas unbeholfen aber ich versuche mein Problem best möglichst dazustellen.
also:
ich muss das aktuelle systemdatum in ein sogenanntes juliansches datum umwandeln also aus 27.07.2009 (tt.mm.jjjj) wird 9208 (j.gezählte tage)
das ganze konnte ich nun schon mit einer excel funktion berechnen aber nun kommt mein problem es soll ohne excel funktionieren am besten gepackt in eine exe datei! das der user nur eine exe datei anklicken muss wo so etwas wie eine messagebox aufpopt mit dem gewandelten datum.
nun hab ich leider noch nie außerhalb von programmen programmiert (vba in access usw.)
könnte mir da jemand weiterhelfen der das schon des öfteren mal gemacht hat ?
danke schonmal im vorraus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 121406
Url: https://administrator.de/forum/exe-datei-die-eine-datumsberechnung-durchfuehrt-121406.html
Ausgedruckt am: 14.04.2025 um 07:04 Uhr
11 Kommentare
Neuester Kommentar
nimm vb.net dann kannste den code von vba gleich fast 1:1 importieren. des gibts auch als freeware von MS
http://www.microsoft.com/germany/express/
http://www.microsoft.com/germany/express/

Hallo DerAkustiker!
Aus 27.07.2009 (tt.mm.jjjj) wird 9208 (j.gezählte tage) ..
Der Umrechnung kann ich nicht ganz folgen.
Das "Julianische Datum" ist eine seit dem 1. Januar 4713 vor Christus fortlaufende Nummerierung der Tage. Der Tageswechsel erfolgt immer um 13 Uhr MEZ (12 Uhr GMT).
Das Julianische Datum für den 01.01.2000 = 2454846
Das Julianische Datum für den 27.07.2009 = 2455053
Ausserdem könntest Du mal Deinen VBA-Code posten.
Gruß Dieter
Aus 27.07.2009 (tt.mm.jjjj) wird 9208 (j.gezählte tage) ..
Der Umrechnung kann ich nicht ganz folgen.
Das "Julianische Datum" ist eine seit dem 1. Januar 4713 vor Christus fortlaufende Nummerierung der Tage. Der Tageswechsel erfolgt immer um 13 Uhr MEZ (12 Uhr GMT).
Das Julianische Datum für den 01.01.2000 = 2454846
Das Julianische Datum für den 27.07.2009 = 2455053
Ausserdem könntest Du mal Deinen VBA-Code posten.
Gruß Dieter
Hallo,
und richtig.
es gibt aber auch:
Im militärischen Bereich ist das Julianische Datum eine vierstellige Zahl der Form „JTTT“, wobei „J“ die letzte Ziffer des Jahres ist und „TTT“ die Tagesnummer. Am 3. Februar 1997 wäre das Julianische Datum „7034“ gewesen.
(aus Wikipedia)
Und wie schon geschrieben, du hast es als VBA vorliegen, also mach es mit VBScript oder VB.Net.
Peter
und richtig.
es gibt aber auch:
Im militärischen Bereich ist das Julianische Datum eine vierstellige Zahl der Form „JTTT“, wobei „J“ die letzte Ziffer des Jahres ist und „TTT“ die Tagesnummer. Am 3. Februar 1997 wäre das Julianische Datum „7034“ gewesen.
(aus Wikipedia)
Und wie schon geschrieben, du hast es als VBA vorliegen, also mach es mit VBScript oder VB.Net.
Peter

Hallo Pjordorf!
Danke, jetzt habe ich's kappiert
Gruß Dieter
Danke, jetzt habe ich's kappiert
Gruß Dieter

Hallo,
ich bekomme das so hin:
Gruß René
ich bekomme das so hin:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
Dim heute
Dim JD
MJD()
sub MJD()
' Quelle: Wikipedia
' Im militärischen Bereich ist das Julianische Datum eine vierstellige Zahl der Form „JTTT“,
' wobei „J“ die letzte Ziffer des Jahres ist und „TTT“ die Tagesnummer. Am 3. Februar 1997 wäre das Julianische Datum „7034“ gewesen.
heute = Now()
JD = (Year(heute) mod 10) * 1000 + (DateDiff("d", "01.01." & Year(heute), heute) + 1)
MsgBox JD
end sub
Gruß René

Hallo Bolle97!
Das Format "0000" funktioniert aber nur, solange Year(heute) mod 10 ungleich 0 ist.
Mit diesem Code im vierstelligen Format:
Quellcode im Text-Editor unter *.vbs abspeichern und doppelklicken.
Gruß Dieter
Das Format "0000" funktioniert aber nur, solange Year(heute) mod 10 ungleich 0 ist.
Mit diesem Code im vierstelligen Format:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Dim DateYear, DateDays, JulianDate, y1, d1, d2, d3
DateYear = Year(Date)
DateDays = Date - DateSerial(DateYear, 1, 1) + 1
'Format(Zahl, "000") gibt's in VBS leider nicht (nur FormatNumber, FormatDate...)
y1 = DateYear Mod 10
d1 = DateDays \ 100 'Div Ganzzahl mit \ anstatt /
d2 = DateDays \ 10
d2 = d2 Mod 10
d3 = DateDays Mod 10
JulianDate = y1 & d1 & d2 & d3
MsgBox "The equivalent Julian date is " & JulianDate
Quellcode im Text-Editor unter *.vbs abspeichern und doppelklicken.
Gruß Dieter