Hallo Hadde.
Hadde hat geschrieben: Fr, 19.05.2023 18:10
Das mit den "Feiertagen" hatte ich gar nicht auf dem "Schirm",
dass da auch 2 auf einen Tag fallen können.
Ist doch nicht schlimm.
Hadde hat geschrieben: Fr, 19.05.2023 18:10
Ich stelle jetzt meine "Feiertagstabelle" auf nur "Bundesweite" um,
da gibt es ja nur 9.
Warum?
Du hast höchstwahrscheinlich ungewollt den Grundstein für eine Manuelle Auswahl gelegt. Denn im Blatt "Feiertage" hast Du eine leere spalte B. Und dort kannst Du dann z.B. eine Zahl eingeben lassen, die dann in den einzelnen Monaten ausgewertet wird. Gibt man in dieser leeren spalte B eine 1 ein, dann heißt das:
"In meinem Bundesland ist das ein gesetzlicher Feiertag."
Gibt man dort eine 2 ein, dann heißt das:
"Es ist ein feierlicher Tag."
Die Wortformulierungen sind nur mal so ein paar Beispiele für deine angezeigte Hilfe.
So, und nun nehmen wir uns mal den Januar als Arbeitsbeispiel vor.
Dort werden ja in der Spalte D die Feiertagsnamen angezeigt.
Deine Formel sieht dort ja z.B. so aus.
Code: Alles auswählen
=WENN(ISTFEHLER(SVERWEIS(B4;Feiertabelle;1;0));"";SVERWEIS(B4;Feiertabelle;3;0))
Das die Überprüfung "zu kompliziert" ist, ist jetzt unwichtig. Aber sehr interessant und wichtig ist:
"Du weisst wie man einem Zelbereich einen Namen zuordnet." Und in disem Falle heißt der Name:
Feiertabelle
Dazu komme ich gleich nochmal.
Hier mein Lösungsvorschlag zur Überprüfung ob im Blatt "Feiertage" in der Spalte B eine 1 steht.
Code: Alles auswählen
=WENN(SUMMENPRODUKT($Feiertage.$A$1:$A$48=A4;$Feiertage.$B$1:$B$48=1);SVERWEIS(A4;Feiertabelle;3;0);"")
Bei deiner datumsanzeige spielt es keine Rolle ob man die Zelle in der Spalt A abfragt, oder in der Spalte B. Beides funktioniert gleichermaßen korrekt. Das siehst Du ja dann selber.
In meiner formel habe ich mit =SUMMENPRODUKT() gearbeitet, da sie in diesem Falle logische Überprüfungen vornimmt.
Damit wird verglichen ob im genannten Blatt das Datum aus A4 vorhanden ist. Wenn ja, dann setzt SUMMENPRODUKT intern den Logikzähler auf 1.
Wenn im genannten Blatt im genannten Zellbereich eine 1 steht, dann wird der Logikzähler für den 2. Vergleich auf 1 gesetzt.
Wenn beide Logikzähler eine 1 haben, dann ist das Ergebnis eine 1.
Anders ausgedrückt.
Logisch 1 ist gleich WAHR.
Logisch 0 ist gleich FALSCH.
WAHR mal WAHR ergibt WAHR. => 1 mal 1 gergibt 1(Logiktabelle)
WAHR mal FALSCH ergibt FALSCH. => 1 mal 0 ergibt 0.
Sollte SUMMENPRODUKT beim vergleichen beispielsweise bei der Überprüfung vom Datum auf eine 0 kommen, dann ist 0 mal 1 gleich 0 oder genauer gesagt FALSCH. Und ich denke mir mal wie eine WENN-Formel prinzipiell funktioniert das weisst Du schon längst.
Wenn jetzt SUMMENPRODUKT gleich WAHR zurückgibt, dann wird SVERWEIS ausgeführt, ansonsten wird ne leere Zelle angezeigt.
Das war jetzt für die gestzlichen Feiertage, die man sich auswählen kann.
Wichtig dabei ist bei meiner Formel dieser Teil.
Denn wenn irgendetwas anderes als eine 1 dort steht, eribt das FALSCH (Logisch 0).
dieser Zellbereich befindet sich wohl innerhalb des Bereichnamen
Feiertabelle, er muss aber ZWINGEND seperat aufgeführt werden. Machst du das nicht, regnet es Fehlermeldungen.
Was du aber machen könntest wäre folgendes, nur mal so als Beispiel.
$Feiertage.$A$1:$A$48 => Name: Feierdatum
$Feiertage.$B$1:$B$48 => Name: JaNein
Dadurch könnte dann meine Formel ungefähr so aussehen. Nur mal so als Beispiel.
Code: Alles auswählen
=WENN(SUMMENPRODUKT(Feierdatum=A4;JaNein=1);SVERWEIS(A4;Feiertabelle;3;0);"")
Jetzt bauen wir das ganze für die "Feierliche Tage" aus.
Im Blatt Januar hast du NUR die spalte D zur Feiertagsnamen anzeige genommen. Also warum nicht noch die Spalte E für die Feierlichen nehmen?
Und das dolle ist, du musst nur in der spalte D folgende Formel eintragen.
Code: Alles auswählen
=WENN(SUMMENPRODUKT($Feiertage.$A$1:$A$48=A9;$Feiertage.$B$1:$B$48=2);SVERWEIS(A9;Feiertabelle;3;0);"")
NEIN!!!
Das ist nicht die gleiche Formel wie vorhin, auch wenn sie fast identisch ist. Es gibt nämlich einen winzig kleinen Unterschied.
Im Blatt "Feiertage" kann man dann ganz einfach in der Spalte B entweder eine 1 oder 2 eintragen. Und schon werden im jeweiligem Monatsblatt in der spalt D die Feiertage angezeigt, und in der spalte E die Feierlichen Tage.
Meine Formel ist nur eine Möglichkeit wie man das erledigen kann. Es gibt auch eine alternative die das etwas einkürzen kann, aber die ist für einen Unwissenden auch etwas verwirrender. Woher ich das wohl weiss *lach-lach-lach*.
Und hier kommt noch ein weiterer Tipp für dich, der mit dem eben besprochenen zu tun hat.
Teile dein Blatt "Feiertage" in 2 Teile auf. Nicht nebeneinander, sondern untereinander.
Der Obere Teil ist nur für die Festen Feiertage, wie z.B. Neujahr, Mai-Feier etc.. Denn die fallen immer auf ein festes Datum, 01.01, 01.05, 03.10. etc.
Und im unteren Teil kommen die beweglichen wie z.B. Ostern, Pfingsten etc.. Also all diejenigen die per Formel berechnet werden müssen.
Das ist aber nur so eine Idee meinerseits.
Danke für deine Blumen
Gruß
balu
Hallo Hadde.
[quote=Hadde post_id=300117 time=1684512621 user_id=64571]
Das mit den "Feiertagen" hatte ich gar nicht auf dem "Schirm",
dass da auch 2 auf einen Tag fallen können.
[/quote]
Ist doch nicht schlimm.
[quote=Hadde post_id=300117 time=1684512621 user_id=64571]
Ich stelle jetzt meine "Feiertagstabelle" auf nur "Bundesweite" um,
da gibt es ja nur 9.
[/quote]
Warum?
Du hast höchstwahrscheinlich ungewollt den Grundstein für eine Manuelle Auswahl gelegt. Denn im Blatt "Feiertage" hast Du eine leere spalte B. Und dort kannst Du dann z.B. eine Zahl eingeben lassen, die dann in den einzelnen Monaten ausgewertet wird. Gibt man in dieser leeren spalte B eine 1 ein, dann heißt das:
[u]"In meinem Bundesland ist das ein gesetzlicher Feiertag."[/u]
Gibt man dort eine 2 ein, dann heißt das:
[u]"Es ist ein feierlicher Tag."[/u]
Die Wortformulierungen sind nur mal so ein paar Beispiele für deine angezeigte Hilfe.
So, und nun nehmen wir uns mal den Januar als Arbeitsbeispiel vor.
Dort werden ja in der Spalte D die Feiertagsnamen angezeigt.
Deine Formel sieht dort ja z.B. so aus.
[code=php]
=WENN(ISTFEHLER(SVERWEIS(B4;Feiertabelle;1;0));"";SVERWEIS(B4;Feiertabelle;3;0))
[/code]
Das die Überprüfung "zu kompliziert" ist, ist jetzt unwichtig. Aber sehr interessant und wichtig ist: [u]"Du weisst wie man einem Zelbereich einen Namen zuordnet."[/u] Und in disem Falle heißt der Name:
[b][u]Feiertabelle[/u][/b]
Dazu komme ich gleich nochmal.
Hier mein Lösungsvorschlag zur Überprüfung ob im Blatt "Feiertage" in der Spalte B eine 1 steht.
[code=php]
=WENN(SUMMENPRODUKT($Feiertage.$A$1:$A$48=A4;$Feiertage.$B$1:$B$48=1);SVERWEIS(A4;Feiertabelle;3;0);"")
[/code]
Bei deiner datumsanzeige spielt es keine Rolle ob man die Zelle in der Spalt A abfragt, oder in der Spalte B. Beides funktioniert gleichermaßen korrekt. Das siehst Du ja dann selber.
In meiner formel habe ich mit =SUMMENPRODUKT() gearbeitet, da sie in diesem Falle logische Überprüfungen vornimmt.
[code=php]
SUMMENPRODUKT($Feiertage.$A$1:$A$48=A4
[/code]
Damit wird verglichen ob im genannten Blatt das Datum aus A4 vorhanden ist. Wenn ja, dann setzt SUMMENPRODUKT intern den Logikzähler auf 1.
[code=php]
;$Feiertage.$B$1:$B$48=1
[/code]
Wenn im genannten Blatt im genannten Zellbereich eine 1 steht, dann wird der Logikzähler für den 2. Vergleich auf 1 gesetzt.
Wenn beide Logikzähler eine 1 haben, dann ist das Ergebnis eine 1.
Anders ausgedrückt.
Logisch 1 ist gleich WAHR.
Logisch 0 ist gleich FALSCH.
WAHR mal WAHR ergibt WAHR. => 1 mal 1 gergibt 1(Logiktabelle)
WAHR mal FALSCH ergibt FALSCH. => 1 mal 0 ergibt 0.
Sollte SUMMENPRODUKT beim vergleichen beispielsweise bei der Überprüfung vom Datum auf eine 0 kommen, dann ist 0 mal 1 gleich 0 oder genauer gesagt FALSCH. Und ich denke mir mal wie eine WENN-Formel prinzipiell funktioniert das weisst Du schon längst.
[code=php]
;SVERWEIS(A4;Feiertabelle;3;0);"")
[/code]
Wenn jetzt SUMMENPRODUKT gleich WAHR zurückgibt, dann wird SVERWEIS ausgeführt, ansonsten wird ne leere Zelle angezeigt.
Das war jetzt für die gestzlichen Feiertage, die man sich auswählen kann.
Wichtig dabei ist bei meiner Formel dieser Teil.
[code=php]
;$Feiertage.$B$1:$B$48=1
[/code]
Denn wenn irgendetwas anderes als eine 1 dort steht, eribt das FALSCH (Logisch 0).
[code=php]
;$Feiertage.$B$1:$B$48=1
[/code]
dieser Zellbereich befindet sich wohl innerhalb des Bereichnamen [b][u]Feiertabelle[/u][/b], er muss aber ZWINGEND seperat aufgeführt werden. Machst du das nicht, regnet es Fehlermeldungen.
Was du aber machen könntest wäre folgendes, nur mal so als Beispiel.
$Feiertage.$A$1:$A$48 => Name: Feierdatum
$Feiertage.$B$1:$B$48 => Name: JaNein
Dadurch könnte dann meine Formel ungefähr so aussehen. Nur mal so als Beispiel.
[code=php]
=WENN(SUMMENPRODUKT(Feierdatum=A4;JaNein=1);SVERWEIS(A4;Feiertabelle;3;0);"")
[/code]
Jetzt bauen wir das ganze für die "Feierliche Tage" aus.
Im Blatt Januar hast du NUR die spalte D zur Feiertagsnamen anzeige genommen. Also warum nicht noch die Spalte E für die Feierlichen nehmen?
Und das dolle ist, du musst nur in der spalte D folgende Formel eintragen.
[code=php]
=WENN(SUMMENPRODUKT($Feiertage.$A$1:$A$48=A9;$Feiertage.$B$1:$B$48=2);SVERWEIS(A9;Feiertabelle;3;0);"")
[/code]
NEIN!!!
Das ist nicht die gleiche Formel wie vorhin, auch wenn sie fast identisch ist. Es gibt nämlich einen winzig kleinen Unterschied.
[code=php]
;$Feiertage.$B$1:$B$48=2
[/code]
Im Blatt "Feiertage" kann man dann ganz einfach in der Spalte B entweder eine 1 oder 2 eintragen. Und schon werden im jeweiligem Monatsblatt in der spalt D die Feiertage angezeigt, und in der spalte E die Feierlichen Tage.
Meine Formel ist nur eine Möglichkeit wie man das erledigen kann. Es gibt auch eine alternative die das etwas einkürzen kann, aber die ist für einen Unwissenden auch etwas verwirrender. Woher ich das wohl weiss *lach-lach-lach*.
Und hier kommt noch ein weiterer Tipp für dich, der mit dem eben besprochenen zu tun hat.
Teile dein Blatt "Feiertage" in 2 Teile auf. Nicht nebeneinander, sondern untereinander.
Der Obere Teil ist nur für die Festen Feiertage, wie z.B. Neujahr, Mai-Feier etc.. Denn die fallen immer auf ein festes Datum, 01.01, 01.05, 03.10. etc.
Und im unteren Teil kommen die beweglichen wie z.B. Ostern, Pfingsten etc.. Also all diejenigen die per Formel berechnet werden müssen.
Das ist aber nur so eine Idee meinerseits.
Danke für deine Blumen :-)
Gruß
balu