Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.06.2024 19:56:24
17.06.2024 19:39:46
Anzeige
Archiv - Navigation
1864to1868
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
Inhaltsverzeichnis

Tage eines Jahres auflisten

Tage eines Jahres auflisten
24.01.2022 11:09:49
Chris
Hallo VBAler,
ich möchte per Makro alle 365 Tage des aktuellen Jahr untereinander auflisten.
Wie macht man so etwas?
Gruß
Chris

20
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tage eines Jahres auflisten
24.01.2022 11:19:35
{Boris}
Hi,
z.B. so (bezogen auf das aktuelle Jahr):

Sub auflisten()
Dim x As Long
For x = 1 To 366
Cells(x, 1) = DateSerial(Year(Date), 1, 1) - 1 + x
Next x
End Sub
VG, Boris
AW: Tage eines Jahres auflisten
24.01.2022 11:29:57
Günther
Moin Boris,
DIESES (=das aktuelle) Jahr hat keinen 29.2. ! Ergo: For x = 1 To 365 ☺
 
Gruß
Günther  |  mein Excel-Blog
In 2 Jahren...
24.01.2022 12:10:48
{Boris}
Hi,
...ist es aber wieder so weit - dann fehlt der 31.12.
Schaltjahrprüfung kann man ja aber problemlos noch im Code einbauen, wenn man es unbedingt möchte.

Sub auflisten()
Dim blnSchaltjahr As Boolean
blnSchaltjahr = (Day(DateSerial(Year(Date), 2, 28) + 1) = 29)
Dim x As Long
For x = 1 To 365 - blnSchaltjahr
Cells(x, 1) = DateSerial(Year(Date), 1, 1) - 1 + x
Next x
End Sub
VG, Boris
Anzeige
AW: In 2 Jahren...
24.01.2022 12:31:04
Chris
Hallo zusammen,
vielen Dank für die Hilfe. Funktioniert bestens.
Gruß
Chris
AW: Tage eines Jahres auflisten
24.01.2022 11:34:24
Rudi
Hallo,
alternativ per Formel und in Werte umwandeln:

Sub GanzesJahr()
With Range("A1:A365")
.FormulaR1C1 = "=DATE(YEAR(TODAY())-1,12,31)+ROW()"
.Value = .Value
End With
End Sub
Gruß
Rudi
AW: Tage eines Jahres auflisten
24.01.2022 12:53:28
Chris
Hallo Rudi,
vielen Dank. Auch dies funktioniert. Nun noch eine Sache:
Wie kann ich aus der gesamte Liste bspw. alle Sonntage des aktuellen Monats herausfiltern und untereinander ins Worksheet schreiben`
Gruß
Chris
AW: Tage eines Jahres auflisten
24.01.2022 13:09:43
werni
Hallo Chris
Indem du die Spalte A:A folgend formatierst ...
TTT* TT.MM.JJJJ
Gruss werni
Anzeige
AW: Tage eines Jahres auflisten
24.01.2022 15:52:49
Chris
Hallo Werni,
danke für den Tipp, der mir aus "Montag, 24.Januar 2022", den "Mo. 24.01.2022" macht.
Die Sonntage sollen in einer anderen Spalte untereinander kopiert werden. Ich arbeite gerade an einer Lösung mit der Case....-Anweisung.
Zumindest hab ich schon geschaft, alle Sonntag farblich zu markieren,....
With ActiveSheet
For i = 1 To .Cells(.Rows.Count, "A").End(xlUp).Row
Select Case .Cells(i, "A")
Case "Samstag"
.Cells(i, "A").Interior.Color = RGB(255, 255, 128) 'gelb
End Select
Next i
End With
AW: Tage eines Jahres auflisten
24.01.2022 14:15:30
UweD
Hallo
in A1 steht der 01.01.

Formel in z.B. D1   =A1+7-WOCHENTAG(A1;11)

in D2 =WENN(JAHR(D1+7)=JAHR($A$1);D1+7;"")
D2 nach unten kopieren bis Leer oder Fehler
LG UweD
Anzeige
AW: Tage eines Jahres auflisten
24.01.2022 15:57:19
Chris
Hallo UweD,
das funktioniert. Kannst du mir die FOrmeln erklären?
Gurß
Chris
AW: Tage eines Jahres auflisten
25.01.2022 08:38:59
UweD
Hallo

WOCHENTAG(A1;11)
ermittelt den Wochentag vom 01.01.(2022) dabei sagt der Parameter 11 aus, dass der Mo = 1 ist
Also kommt dort für Freitag, 1.1.2022 eine 6 heraus
7 Tage weiter minus 6 = 1
Somit 01.01. +1 = erster Sonntag
- - -
Im 2. Teile wird immer 7 Tage weiter gezählt
Solange, bis das Datum größer ist als das aktuelle Jahr
LG UweD
AW: Tage eines Jahres auflisten
25.01.2022 09:20:42
Chris
Hallo UweD,
danke für die Erklärung. Das bringt mich weiter. Gruß
Chris
Anzeige
sorry
25.01.2022 10:48:19
UweD
Also kommt dort für Freitag, 1.1.2022 eine 6 heraus
Also kommt dort für Samstag, 1.1.2022 eine 6 heraus
AW: Tage eines Jahres auflisten
24.01.2022 14:09:36
Rpp63
Moin!
Egal ob VBA oder Formel,
der 33.1. ist in beiden Welten der 2.2.
In Excel markieren ich (mittels Namenfeld) A1:A365
=DATUM(2022;1;ZEILE())
und schließe mittels Strg+Enter ab
In meinem Excel 365 reicht die einzige Formelzelle
=DATUM(2022;1;SEQUENZ(365))
Gruß Ralf
Mittels Einzeiler in VBA
24.01.2022 17:21:27
RPP63

[a1:a365]=[date(year(today()),1,row(1:365))]

AW: Mittels Einzeiler in VBA
25.01.2022 06:26:46
Chris
Hallo Ralf,

[a1:a365]=[date(year(today()),1,row(1:365))]
liefert überall den 1. Januar 2022....
Anzeige
=DATUM(A1;1;SEQUENZ(366-(TAG(DATUM(A1;2;29))=1)))
24.01.2022 17:23:29
Sulprobil
(in Excel 2021 oder 365)
oder kürzer
24.01.2022 18:21:56
RPP63

=DATUM(A1;1;SEQUENZ(365+ISTZAHL("29.2."&A1)))
Ist aber nur homöopathisch …
AW: "homöopathisch"? Ja, das könnte sein ;-) ...
25.01.2022 10:04:21
neopa
Hallo Ralf,
... denn egal was auch immer in A1 steht (hab es jetzt nicht nachgelesen) ergibt =365+ISTZAHL("29.2."&A1) immer 365.
Du meinst womöglich =365+ISTZAHL(--("29.2."&A1)) wenn in A1 eine Jahreszahl steht. Oder?
Gruß Werner
.. , - ...
Einer geht noch (wenn auch leider mit 3x A1)
26.01.2022 21:39:54
lupo1
=DATUM(A1;1;SEQUENZ(366-(TAG(DATUM(A1;2;29))=1)))
=DATUM(A1;1;SEQUENZ(365+ISTZAHL(--("29.2."&A1))))
=(1&-A1)+SEQUENZ((1&-A1-1)-(1&-A1);;0)
=LET(i;1&-A1;SEQUENZ((1&-A1-1)-i;;i))
... wie gesagt: Ich mag Adresswiederholungen nicht, und so sei dies nur als eine weiter mögliche Abkürzung genannt. Das LET bringt mich zum Glück dann wieder auf 2x A1.
Anzeige

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige