Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
732to736
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
732to736
732to736
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kalender via VBA

Kalender via VBA
Uwe
Hallo!
Bei der Erstellung einer hochkomplexen Anwendung habe ich ein, vermutlich lösbares Problem. Bei dem Auftrag handelt es sich um eine Stundenabrechnung gemäß Tarifrecht öffentlicher Dienst. Das aber nur am Rande. Mein Problem ist folgendes:
Es existiert eine Datei mit einem Startarbeitsblatt (Start) und insgesamt 30 weiteren Blättern für jeden Mitarbeiter. Nun soll in der Zelle K10 des Blattes "Start" z.B. der 01.02.06 als Datum eingetragen werden können. Gleichzeitig daraufhin aber via VBA!!! in den Blättern für die Mitarbeiter in den Zellen A8 bis A38 das Datum des gewählten Monats im Format "TT" sowie in den Zellen B8 bis B38 dieses Datum im Format "TTT" eingetragen werden.
Verständlich, das der Kalender richtig funktionieren soll? Sicher... (gemeint ist hier gerade z.B. das der Februar 06 als Monat mit 28 Tagen erkannt wird usw. So z.B. der Februar gemeint ist, sollen die Zellen A36:B38 in den Arbeitsblättern der Mitarbeiter schlicht leer bleiben. Eben sich der Anzahl der Kalendertage im Monat anpassen.
Sollte doch machbar sein. Nur aber wie?
Wäre riesig, so sich jemand meines Problemchens? annimmt!

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Kalender via VBA
18.02.2006 14:09:55
Peter
Hallo Uwe,
bei Excel-Profi und VBA gut, sollte dir so ein Makro eigentlich leicht von der Tastatur gehen:

Public Sub TageImMonat()
Dim Anz_Tage      As Integer
Dim Anz_Blaetter  As Integer
Dim Anz_Eintrag   As Integer
Dim Datum         As Date
Dim BegDatum      As Date
   Application.ScreenUpdating = False
'    die Anzahl Tage des Monats aus dem Datum ableiten.
'  ~~~~~~~ das gilt nur für das Jahrhundert '20' ~~~~~~~
   Sheets("Start").Activate
   If IsDate([K10]) Then
      Datum = "01." & Month([K10]) & "." & Year([K10])
    Else
      MsgBox "in Zelle K10 im Blatt 'Start' steht kein Datum - Abbruch!", _
         16, "   Hinweis für " & Application.UserName
      Exit Sub
   End If
   Anz_Tage = Day(DateSerial(Year(Datum), Month(Datum) + 1, 0))
   
   For Anz_Blaetter = 1 To Sheets.Count
      Sheets(Anz_Blaetter).Activate
      If ActiveSheet.Name <> "Start" Then
         BegDatum = Datum
         For Anz_Eintrag = 1 To Anz_Tage
            Range("A" & Anz_Eintrag + 7).Value = Format(Day(BegDatum), "00")
            Range("B" & Anz_Eintrag + 7).Value = Format(BegDatum, "ddd")
            BegDatum = BegDatum + 1
         Next Anz_Eintrag
      End If
   Next Anz_Blaetter
   
   Application.ScreenUpdating = True
Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
Anzeige
AW: Kalender via VBA
18.02.2006 14:30:52
Peter
Hallo Uwe,
etwas 'ausgefeilter' läuft es bei Change der Zelle K10 im Blatt Start sofort an.
https://www.herber.de/bbs/user/31179.xls
Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
AW: Kalender via VBA
18.02.2006 15:45:50
Uwe
Hallo Herr Feustel!
Vielen Dank für Ihre Mühe. Beide von Ihnen genannten Methoden entsprachen genau dem, was mir fehlte. Hab mich dann doch für die zweite Variante entschieden. Die nämlich seit insgesamt "pflegeleichter".
Tja, schon Wilhelm Busch "sagte" schon: "Wenn andere klüger sind, als wir"...
Besten Dank!
Uwe Siebers
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige