Ermittlung der Kalenderwoche

Am Montag soll der Kalender ansonsten neben dem Wochentag auch die aktuelle Kalenderwoche anzeigen. Dazu müssen Sie die bisherige Formel in der Zelle B38 abändern:

=WENN(WOCHENTAG(A38)=2;TEXT(A38;"TTT")&"   KW "  &KALENDERWOCHE(A38;1);A38)

Diese Formel prüft an jedem Tag, ob der Wochentag der besagten Zelle ein Montag ist (WOCHENTAG = 2). Ist dies der Fall, weist Calc den Kalendertag dieser Zelle mit dem Format-Code TTT – wie oben beschrieben – als Text aus. Dann folgen der Text " KW " (drei Leerzeichen vor KW, eines danach) sowie die errechnete Kalenderwoche (KALENDERWOCHE(A38;1)). Zusätzlich müssen Sie den Inhalt der Zelle linksbündig ausrichten und als Format-Code wieder TTT angeben. Doch tragen Sie auch diese Formel noch nicht kalenderweit ein, es geht noch weiter mit den Feiertagen.

Feiertage einfügen

Für Feiertage gibt es leider keine eingebaute Funktion, die Calc abfragen könnte. Deshalb müssen Sie selbst eine Feiertagsliste anlegen, solche Listen finden Sie zum Beispiel hier [1]. Diese fügen Sie in einem freien Bereich der Kalendertabelle ein – beispielsweise irgendwo rechts daneben oder in einer eigenen Tabelle. Anschließend vergleichen Sie die Datumsangaben des Kalenders mit dieser Liste und weisen so Feiertage im Kalender aus. Für dieses Beispiel nehmen wir an, dass Sie die gesamte Liste der Feiertage in der Tabelle2 ablegen. Diese benennen Sie über einen Rechtsklick auf den Reiter Tabelle2 und über den Menüpunkt Tabelle umbenennen in Feiertage um. Im Tabellenbereich A2:A100 (Abbildung 5) fügen Sie die Daten der Feiertage ein, in die Zellen B2:B100 kommen die zugehörigen Namen. In der Zeile 1 sehen Sie die Überschriften.

Die Datumswerte in Spalte A tragen Sie mit Hilfe der Funktion DATUM(Jahr; Monat; Tag) ein, etwa =DATUM(Kalender.A36;12;24) für Heiligabend, =OSTERSONNTAG(Kalender.A36)-2 für Karfreitag, =DATUM(Kalender.A36;1;1) für Neujahr und so weiter. Auf diese Weise verwenden Sie die Liste für jedes Kalenderjahr, das die Zelle A36 der Tabelle Kalender anbietet. Letztere müssen Sie dazu, wie eben gezeigt, von Tabelle1 in Kalender umbenennen, damit jeder Benutzer sofort merkt, um welche Tabellenblätter es sich handelt. Zum Schluss weisen Sie der Liste noch das gewünschte Datumsformat zu, in diesem Fall TT.MM.JJ. Damit die Feiertage auch mit ihrem Namen im Kalender erscheinen, tragen Sie in die danebenliegende Spalte B ihre Namen ein.

Zur einfacheren Handhabung markieren Sie nun den Datumsbereich Feiertage.A2:A100 und versehen ihn über Einfügen / Namen / Festlegen mit dem Namen Feiertage. Da sich der gesamte Feiertagsabschnitt aber auf den Bereich Feiertage.A2:B100 erstreckt, markieren Sie auch diesen und nennen ihn Feiertagsbereich.

Die Spalte C der Tabelle Feiertage enthält zusätzlich sämtliche in Spalte A verwendeten Formeln in lesbarer Form. Möglich macht dies die Funktion =FORMEL() – in Zelle C2 heißt sie etwa =FORMEL(A2).

Abbildung 5: Im Internet gibt es zahlreiche Listen, welche die Feiertage nach Bundesländern aufdröseln. Aus ihnen erstellen Sie die Tabelle "Feiertage".

Für die zum Anzeigen des Feiertags verwendete Formel spielt es keine Rolle, ob Sie in die Feiertagsliste zuerst die Feiertagsnamen und dann die Datumswerte oder beides in umgekehrter Reihenfolge eingeben. Sie müssen die Feiertagsliste auch nicht chronologisch sortieren. Die Formel, die diese Bedingungen erfüllt und den Feiertagsnamen liefert, besitzt exemplarisch folgenden Aufbau:

=WENN(ISTNV(VERGLEICH(<Datumskriterium>;
<Datumsbereich des Feiertagsbereich>;0));
"";INDEX(<gesamter Feiertagsbereich>;
VERGLEICH(<Datumskriterium>;
<Datumsbereich des Feiertagsbereich>;0);
<Index der Namensspalte des Feiertagsbereich>))

In der Tabelle Feiertage finden Sie die Feiertage in den Spalten A und B, den gesamten Feiertagsbereich unter Feiertage.A2:B100. Den Datumsbereich des Feiertagsbereich haben Sie bereits mit Feiertage gelabelt (A2:A100). Der Parameter Index der Namensspalte des Feiertagsbereich gibt an, in welcher Spalte des Feiertagsbereichs Sie die Namen der Feiertage finden. Im Beispiel handelt es sich um Spalte B – der Index erhält somit den Wert 2. Gehen Sie weiterhin davon aus, dass Sie das Datumskriterium von Zelle C38 verwenden, lautet die mit Werten gefüllte Formel:

=WENN(ISTNV(VERGLEICH(C38;Feiertage;0));"";
" - "&INDEX(Feiertagsbereich;VERGLEICH(C38;Feiertage;0);2))

Diese prüft zuerst mit Hilfe der Funktion ISTNV(), ob das gesuchte Datum überhaupt in der Feiertagsliste existiert. Die Suche erfolgt über die Funktion VERGLEICH(Suchkriterium; Suchmatrix; Typ), die den Fehlerwert #NV zurück gibt, wenn sie keine Übereinstimmung findet. Dieser Wert lässt die Funktion ISTNV() "wahr" werden, weshalb die umgebende WENN-Abfrage das "Dann-Ergebnis" ausgibt – was hier aus einer leeren Zeichenfolge (zwei Anführungszeichen) besteht.

Bei einer Übereinstimmung erhalten Sie den Feiertagsnamen über die Funktion INDEX(Bezug; Zeile; Spalte; Bereich). Diese liefert den Wert am Schnittpunkt einer Zeile und einer Spalte aus der Feiertagsliste. Aus welcher Zeile der Wert stammt, bestimmt die bereits bekannte Funktion VERGLEICH(), die – im Gegensatz zu anderen Verweisfunktionen – nicht den Wert, sondern die Position der Fundstelle liefert. Die Spaltenposition für die INDEX()-Funktion richtet sich nach dem Aufbau der Feiertagstabelle – in diesem Fall befinden sich die Namen in Spalte 2.

Die komplette verknüpfte Formel in der Zelle D38 sieht am Ende also so aus:

=TEXT(C38;"TTT")&WENN(ISTNV(VERGLEICH(C38;Feiertage;0));
WENN(WOCHENTAG(C38)=2;"   KW "&KALENDERWOCHE(C38;1);"");
" - "&INDEX(Feiertagsbereich;VERGLEICH(C38;Feiertage;0);2))

Geben Sie in die Zelle C38 ein Datum ein, erscheint in der Zelle D38 der Wochentag im Zahlenformat TTT zusammen mit dem Feiertagsnamen oder – wenn es keinen Feiertag gibt und der Wochentag auf einen Montag fällt – zusammen mit der errechneten Kalenderwochennummer. Diese Formel kopieren Sie und fügen sie in allen übrigen Monatstageszellen (etwa Spalte B, D etc.) ein. Eine Ausnahme bildet Zelle F66, die den Wochentag zum 29. Februar anzeigt. Hier stellen Sie vor die eben gezeigte Formel (bei der Sie das = entfernen) noch einen zusätzlichen Teil:

=WENN(MONAT(E65+1)<>MONAT($E$37);"";

Der sorgt dafür, dass der Wochentag auch im Schaltjahr auftaucht.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 6 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Besser arbeiten mit OpenOffice
    In dieser Ausgabe erfahren Sie unter anderem, wie Sie in der Tabellenkalkulation Calc mit Datumswerten und Zeiten rechnen, Excel-kompatible Kalenderwochen erzeugen und warum der 1. Januar auf keinen Fall in der achten Kalenderwoche liegt.
  • LibreOffice-Tipps
    Die LibreOffice-Tipps verraten in dieser Folge unter anderem, wie Sie eigene Konstanten für Calc erstellen, Formeln ohne Änderungen kopieren, Erweiterungen für die Bürosuite finden, Fotos optimieren und Verknüpfungen zu eingebetteten Bildern lösen.
  • LibreOffice-Tipps
    Diesmal erfahren Sie in den LibreOffice-Tipps, wie Sie schnell an Blindtext kommen, mit Calc Kündigungsfristen verwalten und errechnen, ob ein Datum in ein Schaltjahr fällt.
  • LibreOffice-Tipps
    Wir zeigen diesmal in den LibreOffice-Tipps, wie Sie die Durchschnittsnote eines Schulfaches errechnen, Tabellentext automatisch formatieren, Sonderzeichen und Umlaute ersetzen und einiges mehr.
  • Besser arbeiten mit OpenOffice
    In dieser Ausgabe setzen wir die OpenOffice-Tipps rund um die Grundfunktionen des Pakets fort. Diesmal beschäftigen wir uns schwerpunktmäßig mit der Textverarbeitung Writer und der Tabellenkalkulation Calc.
Kommentare

Infos zur Publikation

title_2017_01

Digitale Ausgabe: Preis € 9,80
(inkl. 19% MwSt.)

EasyLinux erscheint vierteljährlich und kostet 9,80 Euro. Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 33,30 Euro. Details dazu finden Sie im Computec-Shop.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!      

Aktuelle Fragen

Drucker Epson XP-332 unter ubuntu 14.04 einrichten
Andrea Wagenblast, 30.11.2016 22:07, 1 Antworten
Hallo, habe vergeblich versucht mein Multifunktionsgerät Epson XP-332 als neuen Drucker unter...
Apricity Gnome unter Win 10 via VirtualBox
André Driesel, 30.11.2016 06:28, 2 Antworten
Halo Leute, ich versuche hier schon seit mehreren Tagen Apricity OS Gnome via VirtualBox zum l...
EYE of Gnome
FRank Schubert, 15.11.2016 20:06, 2 Antworten
Hallo, EOG öffnet Fotos nur in der Größenordnung 4000 × 3000 Pixel. Größere Fotos werden nic...
Kamera mit Notebook koppeln
Karl Spiegel, 12.11.2016 15:02, 2 Antworten
Hi, Fotografen ich werde eine SONY alpha 77ii bekommen, und möchte die LifeView-Möglichkeit nu...
Linux auf externe SSD installieren
Roland Seidl, 28.10.2016 20:44, 1 Antworten
Bin mit einem Mac unterwegs. Mac Mini 2012 i7. Würde gerne Linux parallel betreiben. Aber auf e...