Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Registerkarten Erstellen für einen Monat
#1
Hallo,
folgenden Code habe ich um jeweis Registerkarten zu erstellen (für jeden Tag ein Blatt) Jetzt möchte ich aber die Samstage und Sonntage nicht drin haben. Bedeutet soviel Karten Abzüglich der SA und SO.
Kann mir jemand Helfen den Code entsprechend anzupassen damit er dann auch das 1. Blatt als Vorlage für die Tage nimmt?


Sub test()
    Dim jahr                  As String
    Dim monat                 As String
    Dim tag                   As Integer
    Dim tagmax                As Integer
    Dim ganzesDatum           As Date
    Dim ws                    As Worksheet

    jahr = InputBox("Jahr eingeben")
    monat = InputBox("Monat eingeben (03 für März)")


    ganzesDatum = CDate(monat & "." & jahr)

    If monat < 12 Then
        tagmax = Day(CDate(monat + 1 & "." & jahr) - 1)
    Else
        tagmax = Day(CDate(monat - 11 & "." & jahr + 1) - 1)
    End If

    For tag = 1 To tagmax
        Set ws = Worksheets.Add(, Worksheets(Worksheets.Count))
        ws.Name = CDate(tag & "." & monat & "." & jahr)
    Next tag

    Set ws = Nothing
End Sub


Angehängte Dateien
.xls   Stundenzettel Muster.xls (Größe: 41,5 KB / Downloads: 5)
Antworten Top
#2
so ähnlich:

Code:
Sub F_en()

Dim Tag As Date

Mn = Month(Now) + 1
For Tag = VBA.DateSerial(Year(Now), Mn, 1) To DateSerial(Year(Now), Mn + 1, 1) - 1
    Tabelle1.Copy , Sheets(Sheets.Count)
    With ActiveSheet
        .Name = Tag
        .Cells(1, "J") = Tag
    End With
Next Tag

End Sub
Antworten Top
#3
eine Kleinigkeit hatte ich vergessen:

Code:
if weekday(Tag, vbMonday) < 6 then
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste