AW: Erstellen einer Autoform durch Text
15.10.2008 12:43:29
Christoph
Hallo.
Nachfolgend der Code. Alle Sa, So oder Feiertage sollen in rot eingetragen werden, alles andere in schwarz!
Do
ActiveSheet.Cells(startzeile, startspalte) = Aktualdat
'Makro trägt das Datum, die Schichten und die Wochentage ein
If WeekDay(Aktualdat) = 1 Then
Schichten = 4
Tag = "SO"
ElseIf WeekDay(Aktualdat) = 7 Then
Schichten = 4
Tag = "SA"
ElseIf Aktualdat = CLng(CDate("25.12." & Jahreszahl)) Then 'Feiertag
Schichten = 4
Tag = "SO"
ElseIf Aktualdat = CLng(CDate("26.12." & Jahreszahl)) Then 'Feiertag
Schichten = 4
Tag = "SO"
ElseIf Aktualdat = CLng(CDate("01.01." & Jahreszahl)) Then 'Feiertag
Schichten = 4
Tag = "SO"
ElseIf Aktualdat = CLng(CDate("01.05." & Jahreszahl)) Then 'Feiertag
Schichten = 4
Tag = "SO"
ElseIf Aktualdat = CLng(CDate("03.10." & Jahreszahl)) Then 'Feiertag
Schichten = 4
Tag = "SO"
ElseIf Aktualdat = Karfreitag Then 'Feiertag
Schichten = 4
Tag = "SO"
ElseIf Aktualdat = Ostermontag Then 'Feiertag
Schichten = 4
Tag = "SO"
ElseIf Aktualdat = Himmelfahrt Then 'Feiertag
Schichten = 4
Tag = "SO"
ElseIf Aktualdat = Pfingstmontag Then 'Feiertag
Schichten = 4
Tag = "SO"
Else
Schichten = 3
Tag = "WT"
End If
'Eintragen der Schichten und Wochentage
For i = 0 To Schichten - 1
ActiveSheet.Cells(startzeile + i, startspalte) = Aktualdat
ActiveSheet.Cells(startzeile + i, startspalte + 1) = i + 1
ActiveSheet.Cells(startzeile + i, startspalte + 30) = Tag
Next i
startzeile = startzeile + Schichten
Aktualdat = Aktualdat + 1
Loop Until Day(Aktualdat) = 1
Zu der 1. Frage: das ist natürlich schlecht! Die Klammern müssten schon eine definierte Größe haben und das geht wohl nicht mit Windings!
Danke schonmal und Gruß