Ersten Freitag jeden Monats eines Jahres berechenen.

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

jlauter
Beiträge: 5
Registriert: Sa, 23.12.2006 23:54

Ersten Freitag jeden Monats eines Jahres berechenen.

Beitrag von jlauter »

Wie kann man den ersten Freitag eines Monats bestimmen und das für alle 12 Monate eines Jahres wo man eine Jahreszahl angibt zum Beispiel 2007 und dann bekommt man immer den ersten Freitag im Monat von Januar bis Dezember
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Beitrag von komma4 »

wenn in A1 der 05.01.2007 (erster Freitag) steht..., dann berechnet folgende Formel in den weiteren 11 Zellen darunter (Formel durch drag/drop kopieren)

Code: Alles auswählen

=WENN(MONAT(DATWERT(VERKETTEN(JAHR(A1);"-";MONAT(A1);"-";TAG(A1)))+28)=MONAT(A1);DATWERT(VERKETTEN(JAHR(A1);"-";MONAT(A1);"-";TAG(A1)))+35;DATWERT(VERKETTEN(JAHR(A1);"-";MONAT(A1);"-";TAG(A1)))+28)
Hilft das?
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
FranzX
*****
Beiträge: 408
Registriert: Sa, 21.02.2004 16:17

Beitrag von FranzX »

Andere Möglichkeit:

In A1 steht das Kalenderjahr 2007 (4-stellig).
In B2 schreibst du die Formel:

=DATUM($A$1;ZEILE()-1;1)+(WOCHENTAG(DATUM($A$1;ZEILE()-1;1))>6)*7+(6-WOCHENTAG(DATUM($A$1;ZEILE()-1;1)))

Die Zelle B2 kannst du nun nach unten ziehen.


Zum Verständnis:
Der Parameter ZEILE()-1 der Funktion DATUM() berechnet den fortlaufenden Monat (=aktuelle Zeilennummer minus Anzahl der vorhergehenden Zeilen, so dass sich die Zahl 1 ergibt (=Monat 1).

Viele Grüße
FranzX
-----------------------------------------------------------------
TIPP:OpenOffice.org Calc - Formeln und Funktionen
Eia
********
Beiträge: 2614
Registriert: Sa, 23.12.2006 07:40

Beitrag von Eia »

FranzX hat geschrieben:
=DATUM($A$1;ZEILE()-1;1)+(WOCHENTAG(DATUM($A$1;ZEILE()-1;1))>6)*7+(6-WOCHENTAG(DATUM($A$1;ZEILE()-1;1)))
Das hier finde ich eine raffinierte Kombination:
+(...)>6)

Ich habe zuerst wie blöd davorgestanden und nichts begriffen. Bis mir klar wurde, dass Du einfach einen Wahrheitsert bildest, der als Ergebnis 0 oder 1 liefert.
Guter Ansatz, werde ich mir merken (hätte mir schon einige komplizierte WENN-Konstruktionen sparen können).

Für das Datumsproblem habe ich noch einen anderen Ansatz:
Vom achten jeden Monats ausgehen statt vom ersten, dann wird die Formel kürzer:

Code: Alles auswählen

=DATUM($A$1;ZEILE()-1;8)-WOCHENTAG(DATUM($A$1;ZEILE()-1;1)+1)
mfG
FranzX
*****
Beiträge: 408
Registriert: Sa, 21.02.2004 16:17

Beitrag von FranzX »

Super Ansatz, der sogar noch etwas kürzer geht:

=DATUM($A$1;ZEILE()-1;8)-WOCHENTAG(DATUM($A$1;ZEILE()-1;2))

Viele Grüße
FranzX
-----------------------------------------------------------------
TIPP:OpenOffice.org Calc - Formeln und Funktionen
jlauter
Beiträge: 5
Registriert: Sa, 23.12.2006 23:54

DANKE

Beitrag von jlauter »

DANKE
Antworten