Freigeben über

Automatische Tabellenblatterstellung

Anonym
2023-03-05T10:00:17+00:00

Guten Tag ich habe folgende Frage: Ich möchte in einer Monatsmappe für jeden Tag ein Tabellenblatt mit Datum und Wochentagnamen ( Mo-Fr) erstellen, habe auch schon ihr Beispiel hier im Forum mit der Wochentags Erstellung ausprobiert. Funktioniert echt gut halt möchte ich dann zum Datum noch Mo-Fr. ergänzt haben. Ist dieses möglich? Vielen Dank für die Hilfe. MfG Jörg Spiecker

Microsoft 365 und Office | Excel | Für Zuhause | Windows

Gesperrte Frage. Diese Frage wurde aus der Microsoft-Support-Community migriert. Sie können darüber abstimmen, ob sie hilfreich ist, aber Sie können keine Kommentare oder Antworten hinzufügen oder der Frage folgen.

0 Kommentare Keine Kommentare
{count} Stimmen
Antwort, die vom Frageautor angenommen wurde
  1. Andreas Killer 144K Zuverlässigkeitspunkte Freiwilliger Moderator
    2023-03-05T15:19:48+00:00

    Ich würde aber zu dem Datum auch gerne Voarangestellt den Wochentag haben. Geht das?

    Hallo Jörg,

    Das geht. Und ich bin mal so frei und vereinfache das ganze Makro.

    Andreas.

    Sub BlätterEinfügen()
    Dim Vorlage As Worksheet
    Dim Datum As Date, VonDatum As Date, BisDatum As Date

    Application.ScreenUpdating = False
    Set Vorlage = ActiveSheet
    VonDatum = Vorlage.Range("A1")
    BisDatum = WorksheetFunction.EoMonth(VonDatum, 0)
    For Datum = VonDatum + 1 To BisDatum
    Select Case Weekday(Datum, 2)
    Case Is <= 5
    'Montag bis Freitag
    Vorlage.Copy After:=ActiveSheet
    DoEvents
    Range("A1") = Datum
    ActiveSheet.Name = Format(Datum, "ddd dd.mm.yyyy")
    End Select
    Next
    Application.ScreenUpdating = True
    End Sub

    Eine Person fand diese Antwort hilfreich.
    0 Kommentare Keine Kommentare

2 zusätzliche Antworten

Sortieren nach: Am hilfreichsten
  1. Anonym
    2023-03-05T10:26:54+00:00

    Hallo Andreas,

    es geht um das impletieren in folgendes Makro von Claus Busch:

    Sub BlätterEinfügen()
    Dim Last As Integer, First As Integer, i As Integer, Tage As Integer

    Application.ScreenUpdating = False
    With ActiveSheet
       First = Day(.Range("A1"))
       Last = Day(Application.EoMonth(.Range("A1"), 0))
       Tage = Application.NetworkDays(First, Last)
       .Name = .Range("A1")
    End With
    For i = 2 To Tage
       Select Case Weekday(Sheets(i - 1).Range("A1"), 2)
          Case Is < 5
             Sheets(i - 1).Copy after:=Sheets(i - 1)
             ActiveSheet.Range("A1") = Sheets(i - 1).Range("A1") + 1
             ActiveSheet.Name = Range("A1")
          Case 5
             Sheets(i - 1).Copy after:=Sheets(i - 1)
             ActiveSheet.Range("A1") = Sheets(i - 1).Range("A1") + 3
             ActiveSheet.Name = Range("A1")
       End Select
    Next
    Application.ScreenUpdating = True
    End Sub Dieses legt aufgrund eines Datums in A1 für den restlichen Monat Tabellenblätter mit dem fortlaufenden Datum ohne WE an.

    Ich würde aber zu dem Datum auch gerne Voarangestellt den Wochentag haben. Geht das?

    Danke für die >Hilfe

    0 Kommentare Keine Kommentare
  2. Andreas Killer 144K Zuverlässigkeitspunkte Freiwilliger Moderator
    2023-03-05T10:14:15+00:00

    Jedes Datum kann beliebig formatiert werden:

    TT Gibt die Tageszahl

    TTT Gibt den Wochentag abgekürzt

    TTTT Gibt den Wochentag ausgeschrieben

    Das gleiche gilt für den Monat mit M.

    TT TTT TTTT | MM MMM MMMM | JJ JJJJ

    Andreas.

    0 Kommentare Keine Kommentare