mit dem untenstehende Makro wollte ich mit Hilfe von DateSerial eine Datumszahlen- und eine Tagesnamenreihe erstellen, was auch ausgezeichnet funktioniert und dargestellt wird. Als ich aber in die ausgefüllte Tabelle auf dem Datum klicke, erschien mir das Datum 1 - 31 Januar 1900!! Als ich das entdeckte, war ich sehr frustriert.
Woran könnte das liegen? Habe ich ein Fehler in der Schreibweise gemacht? (Ich arbeite mit Exel 2003)
Ein herzlichen Dank im Voraus für eine Antwort!
Hier das Makr:
Sub WochenenTagesZahlenNamen()
Dim i As Integer, b As Integer
Dim Datum As Date
ThisWorkbook.Worksheets(„Tabelle4“).Activate
Application.ScreenUpdating = False
For i = 1 To 31
Datum = DateSerial(2011, 6, i)
Cells(i, 7).Offset(9, 0).Value = i
Cells(i, 7).NumberFormatLocal = „TT“
’ Tageszahlen 01, 02, …
If Weekday(Datum) = 1 Then
With Range(Cells(i, 6), Cells(i, 15)).Offset(9, 0)
.Interior.Color = vbYellow
With Range(Cells(i, 6), Cells(i, 7)).Offset(9, 0)
.Font.Bold = True
.HorizontalAlignment = xlCenter
End With
End With
ElseIf Weekday(Datum) = 7 Then
With Range(Cells(i, 6), Cells(i, 15)).Offset(9, 0)
.Interior.Color = vbYellow
With Range(Cells(i, 6), Cells(i, 7)).Offset(9, 0)
.Font.Bold = True
.HorizontalAlignment = xlCenter
End With
End With
Else
With Range(Cells(i, 6), Cells(i, 15)).Offset(9, 0)
.Interior.Pattern = xlNone
.HorizontalAlignment = xlCenter
End With
End If
’ Tagesnamen So, Mo, …
For b = 1 To 31
Datum = DateSerial(2011, 6, b)
Cells(b, 6).Offset(9, 0).Value = b
Cells(b, 6).Offset(9, 0).NumberFormatLocal = „TTT“
Next b
Next i
Application.ScreenUpdating = True
End Sub