Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

exe Datei die eine Datumsberechnung durchführt

Frage Entwicklung

Mitglied: DerAkustiker

DerAkustiker (Level 1) - Jetzt verbinden

27.07.2009, aktualisiert 14:24 Uhr, 4576 Aufrufe, 11 Kommentare, 1 Danke

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
Mitglied: Weiricth
27.07.2009 um 14:31 Uhr
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/
Bitte warten ..
Mitglied: filippg
27.07.2009 um 14:38 Uhr
Hallo,

das klingt irgendwie nach Schulaufgabe. Und die sollte man zumindest größtenteils selber machen (nebenbei: euch wurde bestimmt auch einen Programmiersprache vorgegeben).

Gruß

Filipp
Bitte warten ..
Mitglied: DerAkustiker
27.07.2009 um 14:49 Uhr
nene ist für den betrieb keine sorge den ersten tipp probier ich mal aus falls jemand noch ne andere lösung hat darf er gerne posten !
Bitte warten ..
Mitglied: 76109
27.07.2009 um 16:09 Uhr
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
Bitte warten ..
Mitglied: miniversum
27.07.2009 um 18:18 Uhr
Deine anforderungen sind doch nur das manns anklickt, ein eingabefeld kommt zum eintagen und die ausgabe mit Umrechnung. Und in VBA hast du das ganze schon. Dann mach das doch in VB Script. Ist ja sehr ähnlich. Den code musst du also garncith groß anpassen.
Bitte warten ..
Mitglied: Pjordorf
27.07.2009 um 18:53 Uhr
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
Bitte warten ..
Mitglied: 76109
27.07.2009 um 19:22 Uhr
Hallo Pjordorf!

Danke, jetzt habe ich's kappiert

Gruß Dieter
Bitte warten ..
Mitglied: DerAkustiker
28.07.2009 um 09:06 Uhr
Private Sub Befehl2_Click()
Dim CRLF As String
Dim NormalDate As Date .
Dim DateYear As String
Dim JulianDay As String
Dim JulianDate As String

CRLF = Chr$(13)

NormalDate = Date

DateYear = Format(NormalDate, "yy")

JulianDay = Format(Str(NormalDate - DateValue("1/1/" & _
Str(DateYear)) + 1), "000")


JulianDate = DateYear & JulianDay

x = Format(JulianDate, "000")


MsgBox "The equivalent Julian date is " & x
End Sub


so das ist mein vba code nur leider bekomm ich den unter vb nicht zum laufen was muss ich ändern außer zB date zu date.today ??
Bitte warten ..
Mitglied: Bolle97
28.07.2009 um 11:17 Uhr
Hallo,

ich bekomme das so hin:

01.
Dim heute 
02.
Dim JD 
03.
 
04.
MJD() 
05.
 
06.
sub MJD() 
07.
' Quelle: Wikipedia 
08.
' Im militärischen Bereich ist das Julianische Datum eine vierstellige Zahl der Form „JTTT“, 
09.
' wobei „J“ die letzte Ziffer des Jahres ist und „TTT“ die Tagesnummer. Am 3. Februar 1997 wäre das Julianische Datum „7034“ gewesen. 
10.
heute = Now() 
11.
JD = (Year(heute) mod 10) * 1000 + (DateDiff("d", "01.01." & Year(heute), heute) + 1) 
12.
MsgBox JD 
13.
 
14.
end sub
Gruß René
Bitte warten ..
Mitglied: 76109
28.07.2009 um 11:26 Uhr
Hallo Bolle97!

Das Format "0000" funktioniert aber nur, solange Year(heute) mod 10 ungleich 0 ist.

Mit diesem Code im vierstelligen Format:
01.
Dim DateYear, DateDays, JulianDate, y1, d1, d2, d3 
02.
 
03.
DateYear = Year(Date) 
04.
 
05.
DateDays = Date - DateSerial(DateYear, 1, 1) + 1 
06.
 
07.
'Format(Zahl, "000") gibt's in VBS leider nicht (nur FormatNumber, FormatDate...) 
08.
y1 = DateYear Mod 10 
09.
d1 = DateDays \ 100  'Div Ganzzahl mit \ anstatt / 
10.
d2 = DateDays \ 10 
11.
d2 = d2 Mod 10 
12.
d3 = DateDays Mod 10 
13.
 
14.
JulianDate = y1 & d1 & d2 & d3 
15.
 
16.
MsgBox "The equivalent Julian date is " & JulianDate
Quellcode im Text-Editor unter *.vbs abspeichern und doppelklicken.

Gruß Dieter
Bitte warten ..
Mitglied: DerAkustiker
29.07.2009 um 07:53 Uhr
super dank euch vor allem dir didi1954 die lösung im editor funktioniert einwandfrei !!!!!
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Batch-Datei in Exe-Datei umwandeln - .exe im Autostart (7)

Frage von Luuke257 zum Thema Batch & Shell ...

Windows 10
gelöst RDP Datei bzw. mstsc .exe unter Windows 10 immer mit erhöhten Rechten ausführen (4)

Frage von zeroblue2005 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...