Gruppe
Ereignis
Bereich
Change
Thema
Tabellen für die Werktage eines Monats erstellen
Problem
Wie kann ich durch die Eintragung einer Jahres- bzw. Monatszahl für jeden Tag des jeweiligen Monats ein Arbeitsblatt generieren lassen? Die Arbeitsblätter sollen als Name den Tag und den Wochen tag tragen.
Lösung
Geben Sie den Ereigniscode in das Klassenmodul des Arbeitsblattes ein.
ClassModule: Tabelle1
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim iYear As Integer, iMonth As Integer, iDay As Integer
Application.ScreenUpdating = False
If Intersect(Target, Range("B1:B2")) Is Nothing Then Exit Sub
If IsEmpty(Range("B1")) Or IsEmpty(Range("B2")) Then Exit Sub
iYear = Range("B1")
iMonth = Range("B2")
For iDay = 1 To Day(DateSerial _
(iYear, iMonth + 1, 0))
If WeekDay(DateSerial(iYear, _
iMonth, iDay), 2) < 6 Then
Worksheets("Tag").Copy after:=Worksheets _
(Worksheets.Count)
ActiveSheet.Name = iDay & " " & Format( _
DateSerial(iYear, iMonth, iDay), "dddd")
End If
Next iDay
Worksheets(1).Select
Application.ScreenUpdating = True
End Sub