Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Zählen wenn Daten eine bestimmte Formel erfüllen
#1
Ich habe folgende Daten in die Zellen H2:H9 eingegeben: 
365
 
31.10.2019, I
01.11.2019, I
30.12.2019, I
31.12.2019, M
29.01.2020, M
30.01.2020, M
 
Es handelt sich bei den Daten H4:H9 um Datumsangaben (die linken 10 Zeichen) mit einer Zusatzinformation (die rechten 3 Zeichen). In H2 steht die Verjährungsfrist von 365 Tagen.
Ich möchte in der Zelle H11 die Zellen aus H4:H9 zählen lassen, deren Datum länger als H2 zurückliegt.
 
Wie kann ich das lösen?
 
Ich habe nach einer Internetrecherche nur die Möglichkeit einer Matrixfunktion gefunden, die ich in H11 eingegeben habe:
{=ANZAHL(WENN(((HEUTE()-DATWERT(LINKS(H4:H9;10)))>H$2);H4:H9))}
 
Leider funktioniert das aber nicht.
 
Ich habe die Matrixfunktion {=(HEUTE()-DATWERT(LINKS(H4:H9;10)))>H$2} überprüft, sie gibt richtigerweise am 29.12.2020
 
WAHR
WAHR
FALSCH
FALSCH
FALSCH
FALSCH

Wenn ich die Daten aus H4:H9 mittels der Formel =DATWERT(LINKS(H4;10)) und AutoAusfüllen auf K4:K9 anwende, erhalte ich
 
365 
31.10.2019
01.11.2019
30.12.2019
31.12.2019
29.01.2020
30.01.2020
 
Wenn ich nun in K11 die Matrixformel {=ANZAHL(WENN(((HEUTE()-K4:K9)>K$2);K4:K9))} eingebe, erhalte ich richtigerweise als Ergebnis „2“.
 
Leider kann ich aber keine „Zwischenschritte“ einbauen, weil neben diesen Daten andere Daten liegen und auch ein anderes Arbeitsblatt ist keine Option, weil schon viele Arbeitsblätter belegt sind.
 
Wie müsste ich die Formel in H11 richtig anwenden?
Oder weiß jemand eine elegante Alternative? Ich wäre froh über eine Variante ohne VBA.
Vielen Dank!


Angehängte Dateien
.xlsx   Zellen_zählen_wenn_Funktion_erfüllt.xlsx (Größe: 9,02 KB / Downloads: 1)
Antworten Top
#2
Hallo E...,

zB. so:

=SUMMENPRODUKT(WENN(((HEUTE()-DATWERT(LINKS(H4:H9;10)))>H$2);1;0))

oder

=SUMMENPRODUKT(--((HEUTE()-DATWERT(LINKS(H4:H9;10)))>H$2))
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#3
Vielen Dank für die rasche Hilfe! (Die Syntax dieser Formel bzw. der Kombi mit der Wenn-Funktion muss ich mir erst ansehen.)
Für das gegebene Beispiel hat es einwandfrei funktioniert, allerdings habe ich das Beispiel vereinfacht und hätte gedacht, ich könnte mir selbst weiterhelfen. Leider habe ich mich getäuscht.
Bei meinem tatsächlichen Problem habe ich folgende Schwierigkeiten
1.       Text und Zahlen (keine Datumsangaben) sind dazwischen
2.       Die Datumsabfrage soll innerhalb eines Bereiches sein (x < Datumsangabe <= y)
3.       Die Funktion soll ein Datum nicht zählen, wenn links davon „abwesend“ steht
Daher funktioniert deine Lösung nicht mehr.
 
Ich habe ein erweitertes Beispiel angehängt.
 
Ich danke schon mal im Voraus für die Unterstützung!


Angehängte Dateien
.xlsx   Zellen zählen wenn Funktion erfüllt ist - Testdatei2.xlsx (Größe: 8,86 KB / Downloads: 3)
Antworten Top
#4
Hallo E...,

im Summenprodukt können

1. Fehlerwerte in einer Bedingung (hier kein Datum in den ersten 10 Zeichen) können mit "WENNFEHLER(--(...);0)" abgefangen und
2. UND-Bedingungen mit einer Multiplikation "(...)*(...)" berechnet werden .

ps. und
3. ODER-Bedingungen mit einer Summation und der Prüfung der Summe auf grösser 0   "--(((...)+(...))>0)"

Wenn die Bedingungen mit UND oder ODER verknüpft werden, kann die Umwandlung des Wahrheitswertes in eine Zahl durch "--" (0 für FALSCH und 1 für WAHR) entfallen, da sie für das Produkt oder die Addition schon umgewandelt werden.


pps. Anstatt "--(...)" kann man auch "1*(...)" schreiben aber zwei gleiche Zeichen sind schneller zu schreiben als zwei ungleiche. Blush


Angehängte Dateien
.xlsx   Zellen zählen wenn Funktion erfüllt ist - Testdatei2.xlsx (Größe: 10,69 KB / Downloads: 4)
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#5
Vielen Dank, lieber Helmut!
Ich habe mittlerweile - nach längerer Recherche - auch eine andere Möglichkeit gefunden:

{=ANZAHL(WENN(HEUTE()-DATWERT(LINKS($H$4:$H$22;10))<=$H$2+$H$1;WENN(HEUTE()-DATWERT(LINKS($H$4:$H$22;10))>$H$2;WENN($F$4:$F$22<>"abwesend";1;""))))}

Weißt du zufällig, warum in meiner Ursprungsfrage {=ANZAHL(WENN(((HEUTE()-DATWERT(LINKS(H4:H9;10)))>H$2);H4:H9))} nicht funktioniert? Das habe ich noch nicht verstanden... v.a. weil ja {=ANZAHL(WENN(((HEUTE()-K4:K9)>K$2);K4:K9))} funktioniert.
Danke dir!

Guten Rutsch,
Jakob


Angehängte Dateien
.xlsx   Zellen zählen wenn Funktion erfüllt ist - Testdatei2.xlsx (Größe: 10 KB / Downloads: 1)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste