Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
536to540
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
536to540
536to540
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zuordnung

Zuordnung
28.12.2004 10:16:43
Anne
Guten morgen Ihr Spezialisten,
ich hätte zu folgendem Code eine Frage.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) <> "L1" Then Exit Sub
Application.ScreenUpdating = False
EnableEvents = False
For n = 1 To 12
sp = (n - 1) * 4
Range(Cells(6, sp + 2), Cells(36, sp + 3)).ClearContents
Range(Cells(6, sp + 2), Cells(6, sp + 3)) = DateSerial([L1], n, 1)
letzte = 30
While Month(Cells(6, sp + 2) + letzte) <> Month(Cells(6, sp + 3))
letzte = letzte - 1
Wend
''Range(Cells(6, sp + 1), Cells(6, sp + 2)).AutoFill Destination:=Range(Cells(6, sp + 1), Cells(6 + letzte, sp + 2)), Type:=xlFillDefault
Range(Cells(6, sp + 2), Cells(6 + letzte, sp + 3)).DataSeries Rowcol:=xlColumns, Type:=xlChronological, Date:= _
xlDay, Step:=1, Trend:=False
Next n
'Call Kommentar
EnableEvents = True
Application.ScreenUpdating = True
End Sub

Wie Ihr sicherlich sofort seht wird hier ein Kalender erstellt, das Datum steht in jeweils zwei Spalten nebeneinander A6 bis A36 und B6 bis B36 (werden unterschiedlich formatiert). Dann zei Spalten frei und dann der nächste Monat usw.
Nun meine Frage: Ich möchte das ganze so lassen, nur soll der ganze Kalender nicht in verschiedenen Spalten stehen sondern nur in Spalte A und B und der Abstand zum nächsten Monat soll 21 Zellen nach unten sein. Geht das?
Gruss anne

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Kalender: DataSeries
28.12.2004 12:33:35
Christoph
Hallo Anne,
mein Vorschlag
Gruß
Christoph

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim n As Byte, letzte As Byte, i%
If Target.Address(0, 0) <> "L1" Then Exit Sub
Application.ScreenUpdating = False
Application.EnableEvents = False
With ActiveSheet
.Columns("B:C").ClearContents
i = 6
For n = 1 To 12
.Range(.Cells(i, 2), .Cells(i, 3)) = DateSerial(Target, n, 1)
letzte = Day(DateSerial(Target, n + 1, 1) - 1)
.Range(.Cells(i, 2), .Cells(i + letzte - 1, 3)).DataSeries
i = i + letzte + 21
Next n
End With
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige