im Anhang findet ihr einen Jahresplaner für mein Büro. Hier wird immer am Anfang des Jahres der Notdienst für die Monteure eingetragen und ausgewertet. Der Notdienst beginnt immer am Montag und geht bis einschließlich Sonntag.
Seit Wochen bin ich auf der Suche nach einer Lösung für folgendes Problem:
Ich rufe jährlich den Kalender auf und speichere ihn unter dem aktuellen Jahresdatum. Dann ändere ich auf dem gespeicherten Exemplar unter Tabellenblatt 3 (Datum) den Zeitraum des Jahres.
Nun wird im Tabellenblatt (Kalender) die Kalenderwochen und der Zeitraum des Notdienstes erkenntlich gezeigt.
Es wäre nun toll eine Lösung zu finden, dass jeweils die Kalenderwoche und links daneben der Bereich (in welchem der Monteur eingetragen wird) sich automatisch zentriert. Wie in meinem Beispiel mit Monteur 1 und Monteur 2. Dies muss ich sonst immer manuell für jeden Bereich machen.
Es wäre ganz toll, wenn sich jemand meinem Problem annehmen könnte.
Variante 1) abreite statt mit Bezeichnungen mit Farben und einer Legende. Dann hast Du das Problem der verbundenen Zellen nicht. Eine Erweiterung davon wäre z.B. die Verwendung von Abkürzungen mit maximal 7 Zeichen. Dann könntest Du jeden Tag ein Zeichen eintragen.
Variante 2) Gestalte Deinen Kalender so, dass komplette Wochen immer im gleichen Bereich stehen. Dann sieht zwar der Monatsanfang etwas gestuft aus - etwas mehr, als jetzt unten die Enden, aber Du brauchst an den verbundenen Zellen nix zu ändern
Variante 3) Wenn Dir das nicht genügt, wären wir bei den Makros. VBA und Makro ist da übrigens das Gleiche ...
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Variante 1) - wir haben im Büro keinen Farbdrucker für A3 - und der Plan wird immer ausgedruckt und in die Halle gehängt. abreite statt mit Bezeichnungen mit Farben und einer Legende. Dann hast Du das Problem der verbundenen Zellen nicht. Eine Erweiterung davon wäre z.B. die Verwendung von Abkürzungen mit maximal 7 Zeichen. Dann könntest Du jeden Tag ein Zeichen eintragen.
Variante 2) - dann müsste ich ja trotzdem die Bereiche manuell zentrieren - wie auch die Kalenderwochen. Gestalte Deinen Kalender so, dass komplette Wochen immer im gleichen Bereich stehen. Dann sieht zwar der Monatsanfang etwas gestuft aus - etwas mehr, als jetzt unten die Enden, aber Du brauchst an den verbundenen Zellen nix zu ändern
Variante 3) - OK nun wäre das für mich auch geklärt... und ich denke ja ein Makro wäre hier wohl das Beste... Wenn Dir das nicht genügt, wären wir bei den Makros. VBA und Makro ist da übrigens das Gleiche ...
21.02.2021, 18:00 (Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2021, 18:03 von schauan.)
Hallöchen,
Variante 2) nein, müsstest Du nicht. So würde das aussehen. In Zeile 8 hast Du immer den ersten Montag des Monats. Maximal kommen 6 Tage davor, wenn der erste Tag Dienstag ist. Minimal würde kein Tag darüber stehen. Januar, Februar usw. sind immer ein Datum, bezogen auf A1, und per Format ausgeschrieben.
... das hat übrigens auch den Vorteil, dass Du z.B. im Januar und auch in anderen Monaten genug Platz für den Kollegen hast, der am 1. und 2. bzw. generell am Monatsanfang dran ist Ansonsten müsstest Du den irgendwie beschneiden
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
22.02.2021, 12:46 (Dieser Beitrag wurde zuletzt bearbeitet: 22.02.2021, 14:48 von Kuwer.)
Hallo Eri,
Code:
Option Explicit
Sub WeeksMerge() Dim i As Long, j As Long, k As Long On Error Resume Next Application.DisplayAlerts = False Application.ScreenUpdating = False For i = 1 To 12 With Range("D4:D34,H4:H34,L4:L34,P4:P34,T4:T34,X4:X34,AB4:AB34,AF4:AF34,AJ4:AJ34,AN4:AN34,AR4:AR34,AV4:AV34").Areas(i) k = 1 For j = 1 To .Rows.Count If Not .Cells(j).MergeCells Then If .Cells(j).Value <> .Cells(j - 1).Value Then If k = 0 Then k = j End If If .Cells(j).Value <> .Cells(j + 1).Value Then With Range(.Cells(k), .Cells(j)) .Offset(, -1).Merge .Merge End With k = 0 End If End If Next j End With Next i Application.ScreenUpdating = True Application.DisplayAlerts = True On Error GoTo 0 End Sub
22.02.2021, 16:17 (Dieser Beitrag wurde zuletzt bearbeitet: 22.02.2021, 16:18 von schauan.)
Hi Uwe,
ich hab jetzt die Zeile Rows("4:34").MergeCells = False eingefügt, will trotzdem nicht. Zumindest, was den Januar betrifft. Lasse ich es nochmal laufen, wird es seltsamerweise schlimmer ... Ich hab auch mal 3:35 genommen, hilft auch nicht
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)