Option
Explicit
Sub
test()
Dim
blnTag
As
Boolean
, blnMonat
As
Boolean
Dim
intTag
As
Integer
Dim
intMonat
As
Integer
Dim
intTageMonat
As
Integer
Dim
intJahr
As
Integer
Dim
dteIst
As
Date
Dim
intLoesung
As
Integer
intJahr = Year(
Date
)
On
Error
GoTo
errorhandler
Do
If
Not
blnTag
Then
_
intTag =
CInt
(InputBox(
"Geben Sie den Tag ein (ganze Zahl):"
))
If
Not
blnMonat
Then
_
intMonat =
CInt
(InputBox(
"Geben Sie den Monat ein (ganze Zahl):"
))
If
intMonat >= 1
And
intMonat <= 12
Then
blnMonat =
True
intTageMonat = Day(
CDate
(DateSerial(intJahr, intMonat + 1, 0)))
If
intTag >= 1
And
intTag <= intTageMonat
Then
blnTag =
True
Loop
Until
blnTag
And
blnMonat
dteIst = DateSerial(intJahr, intMonat, intTag)
intLoesung = DateDiff(
"d"
, DateSerial(intJahr, 1, 1), dteIst)
intLoesung = intLoesung + 1
MsgBox (
"Ihr Datum: "
& intTag &
"."
& intMonat & _
" ist umgerechnet der "
& intLoesung &
". Tag in diesem Jahr"
)
On
Error
GoTo
0
Exit
Sub
errorhandler:
Call
MsgBox(
"Eingabe keine Zahl oder"
& vbCrLf & _
"Abbruch durch Benutzer"
, vbExclamation,
"Programm beendet !"
)
On
Error
GoTo
0
End
Sub