excel 2003 benutzerdefinierter kalender

kaschdewasser

Lt. Junior Grade
Registriert
Aug. 2005
Beiträge
273
Hi an alle,

seit anfang des Jahres besuche ich eine Technikerschule, die jeden montag, jeden donnerstag und jeden 2., 4. und 5. Samstag im Monat ist.

Wir dürfen in jedem fach maximal 75% fehlzeiten haben, um für die Abschlussprüfung zugelassen zu werden.

Jetzt würde ich gerne in Excel einen Kalender erstellen, in dem ich eintragen kann, wann ich im Unterricht war und wann nicht, sodass ich eine automatische auswertung meiner Fehlzeit für jedes Fach in Prozent angegeben bekomme.

Da wir jedes fach nur 1 mal die woche haben, möchte ich jedes fach in ein eigenes Tabellenblatt schreiben.



z.B. haben wir montags das Fach "Montag"
Der erste Montagsunterricht war am 23.08.2010.
Das datum schreibe ich z.b. in Zelle A2.
Jetzt würde ich es gerne so automatisieren, dass ich die Zelle A2 nach unten ziehen oder erweitern kann, und mir excel in die Zelle A3 den nächsten Montag schreibt, also 30.08.2010.
In Zelle A4 der übernächste Montag, also 06.09.2010.
Gibt es hierzu eine Funktion? Oder wie muss ich die Zelle richtig formatieren?




Als nächstes soll mir in einem anderen Arbeitsblatt automatisch nur der 2., 4. und 5. Samstag im Monat angegeben werden.
der erste Samstag wäre der 27.08.2010 gewesen, dann der 10.09. usw.
Gibts vielleicht auch hier was?



In Zellen B würde ich dann die gehaltenen Stunden schreiben, in Zelle C wie viele der gehaltenten Stunden ich an dem Datum aus Zelle A anwesend war.

Auswertung würde dann irgendwo unten erfolgen, da muss ich mir dann noch was anderes überlegen ;)


vielleicht hat jemand eine funktion, um zumindest schonmal die Datumsangaben automatisch zu erstellen?



Würde mich über Antworten sehr freuen.


mfg
 
75 % Fehlzeiten? Meinst du vielleicht 75 % Anwesenheit? Aber selbst das wäre sehr wenig. Egal ... :D


  1. Wenn du mindestens zwei Daten vorgibst und runterziehst, sollte das Datum wochenweise korrekt fortgesetzt werden.
  2. Das dürfte mit Formeln nicht so ohne weiteres möglich sein, da man immer erst prüfen müsste, ob es einen 5. Samstag im Monat überhaupt gibt.
    Aber stimmt der Rythmus so? Denn da hättest du ja immer eine unterschiedliche Anzahl an Unterrichtsstunden im Monat und 5 Samstage gibts auch nicht oft.
 
Ja, meinte natürlich 75% Anwesenheit ;)
Muss deinen Vorschlag mal ausprobieren wenn ich wieder am pc Sitze, vielen dank. hätte ich ja auch mal selbst drauf kommen können...
Zum 2. Muss ich mal schauen, vielleicht find ich ja doch bei google noch was brauchbares.
 
Also mit dieser Formel bekommst du den 2. und 4. Samstag eines Monats (theoretisch auch den 5., aber da musst du eben selbst schauen, ob es den überhaupt gibt).

  • 2. Samstag: =DATUM(Jahr;Monat;1)-REST(DATUM(Jahr;Monat;1)-8;7)+13
  • 4. Samstag: =DATUM(Jahr;Monat;1)-REST(DATUM(Jahr;Monat;1)-8;7)+27
  • 5. Samstag: =DATUM(Jahr;Monat;1)-REST(DATUM(Jahr;Monat;1)-8;7)+34
 
Moin kaschdewasser,

ich habe mir das etwas leichter gemacht und mal einen VBA-Code zusammengestellt. Schreibt für das ganze Jahr die entsprechenden Samstage ab A1 in die Tabelle. Musst nur noch als Datum formatieren, dann stimmt es. Und natürlich alle (frühen) nicht benötigten Daten löschen.

Code:
Option Explicit

Sub Smstage()
   Dim aSamstag()
   Dim i As Long, n As Integer, z As Integer
   Dim Jahr As Integer, Monat As Integer, Tag As Long, Datum As Long
   
   Jahr = InputBox("Bitte das Jahr eingeben")
   z = 0
   For Monat = 1 To 12
      n = 0
      For Tag = 1 To Day(DateSerial(Jahr, Monat + 1, 0))
         Datum = DateSerial(Jahr, Monat, Tag)
         If Weekday(Datum) = 7 Then
            n = n + 1   ' n-ter Samstag im Monat
            If n = 2 Or n = 4 Or n = 5 Then
               z = z + 1
               ReDim Preserve aSamstag(z)
               aSamstag(z) = Datum
            End If
         End If
      Next Tag
   Next Monat
   For i = 1 To UBound(aSamstag)
      Cells(i, 1) = aSamstag(i)
   Next i
End Sub
 
Zurück
Oben