Industrietag eines Datums ausgeben

22/06/2008 - 21:45 von Stefan Theobald | Report spam
Hallo,

ich möchte gerne den Industrietag eines eingestellten Datums im Date-ime
Picker ermitteln und ausgeben.

Warum erhalte ich immer "Das Argument Date2 kann nicht in den Typ "Date"
umgewandelt werden.." bei meinem Code?

Für mich sieht er logisch aus - kann einer mal einen Blick drauf werfen?

Es soll so rauskommen:
"Das eingestellte Datum 01.01.2008 entspricht dem 001 ten Industrietag!"
MsgBox("Das eingestellte Datum " &
DateTimePicker_Liefertermin.Value.ToString & " entspricht dem " &
Format(DateDiff("d", "01.01." &
Format(CDate(DateTimePicker_Liefertermin.Value), "yyyy"),
Format(CDate(DateTimePicker_Liefertermin.Value), "dd.MM.yyyy") + 1), "000")
& " ten Industrietag!", MsgBoxStyle.Information, "errechneter
Industrietag...")


Gruß
Stefan
 

Lesen sie die antworten

#1 Gerold Mittelstädt
22/06/2008 - 22:31 | Warnen spam
Hallo,

Stefan Theobald schrieb:
Hallo,

ich möchte gerne den Industrietag eines eingestellten Datums im Date-ime
Picker ermitteln und ausgeben.



Was ist ein Industrietag?

Warum erhalte ich immer "Das Argument Date2 kann nicht in den Typ "Date"
umgewandelt werden.." bei meinem Code?



Weil irgendwas unsinniges, das keinem Datumformats der eingestellten
Kultur entspricht wird, nicht in ein Datum konvertiert werden kann?

Für mich sieht er logisch aus - kann einer mal einen Blick drauf werfen?

Es soll so rauskommen:
"Das eingestellte Datum 01.01.2008 entspricht dem 001 ten Industrietag!"
MsgBox("Das eingestellte Datum " &
DateTimePicker_Liefertermin.Value.ToString & " entspricht dem " &
Format(DateDiff("d", "01.01." &
Format(CDate(DateTimePicker_Liefertermin.Value), "yyyy"),
Format(CDate(DateTimePicker_Liefertermin.Value), "dd.MM.yyyy") + 1), "000")
& " ten Industrietag!", MsgBoxStyle.Information, "errechneter
Industrietag...")



Na das kann ja nur schiefgehen..
Gewöhn Dir mal an, nicht alles in einer Zeile zu erledigen und
typgerecht zu arbeiten ;) Dann làsst sichs auch debuggen.


Wie wàrs mit:

String.Format("Das eingestellte Datum {0} entspricht dem {1}ten
Industrietag!", dtpLiefertermin.Value.ToShortDateString,
dtpLiefertermin.Value.DayOfYear)


Wenns um Berechnung mit Daten geht schau Dir mal <Date>.Add.. an.
Ist IMHO zweckmàßiger und robuster als diese VB6-Relikte.

Viele Grüße!

Ähnliche fragen