Zähle wenn Wert in einer Spalte ODER der anderen Spalte übereinstimmt

Hallo!

Ich habe eine Tabelle mit zwei Spalten. Beide Spalten können den gleichen oder auch verschiedene Strings enthalten oder leer sein.

zählenwennoder

Ich möchte nun die Zeilen zählen, in denen in mindestens eine der beiden Spalten ein bestimmter Wert vorkommt. Eine Zeile, in der der gesuchte String in beiden Spalten vorkommt, soll aber auch nur ein Mal zählen (kein exklsuives oder). Also so etwas wie

=ZÄHLEWENN(ODER((A1:A10;"xxx");(B1:B10;"xxx")))

So funktioniert es aber nicht (#WERT!). Mit SUMMENPRODUKT habe ich es auch versucht, bin aber nicht zu einem passenden Ergebnis gekommen. Insbesondere liefert

=SUMMENPRODUKT(A1:A10="xxx";B1:B10="xxx")

die Anzahl der Zeilen, in denen beide Spalten “xxx” enthalten (im obigen Beispiel also 1).

Ich habe die Suche bemüht, finde aber immer nur Beispiele, in denen sich das ODER auf den Wert bezieht (xxx ODER yyy), aber nicht über die zwei Spalten hinweg. Daher nun ein neuer Beitrag. Falls die Lösung dafür schon gepostet wurde bitte ich um Entschudligung und freue mich über einen Link dahin.

Edit: Beispieldatei mit verschiedenen Aufgabenvarianten

zeilezaehlen.ods (10.8 KB)

Wenn ich das richtig verstanden habe, soll bei dem Beispiel oben das Ergebnis 4 sein, richtig?

=ZÄHLENWENN(A1:B7;"xxx")-ZÄHLENWENNS(A1:A7;"xxx";B1:B7;"xxx")

2 Likes

Ok, das ist erschreckend einfach :grinning: In meinem konkreten Fall würde das sogar gehen.

Allerdings funktioniert der Ansatz nicht mit drei Spalten, oder wenn sich zwischen den beiden Spalten eine dritte Spalte befindet, die aber nicht berücksichtigt werden soll. Gibt es da auch einen generischen Ansatz?

Lade bitte mal eine Beispieldatei (.ods) mit allen möglichen Eventualitäten hoch.

1 Like

Habe ich an den Originalbeitrag angehängt.

1 Like

So recht?
zeilezaehlen(1).ods (12,4 KB)

Ok, genehmigt :slight_smile:

Ich muss vielleicht weniger generisch denken, sondern mehr lösungsorientiert am konkreten Beispiel. Danke!

Viele Wege führen nach Rom…

=ZÄHLENWENN((A1:A10="xxx")+(B1:B10="xxx");">=1")

als Array-Formel eingeben (Shift+Ctrl+Enter).
Jeder = Operator liefert hier einen Spaltenvektor mit 0 oder 1 (FALSE oder TRUE) Werten, der + Operator wirkt dann wie ein ODER, indem zeilenweise addiert wird und Werte von 0 oder >=1 herauskommen. Ist insgesamt besonders bei mehr als 2-3 Spalten übersichtlicher als verkettete ZÄHLENWENNS(), oder wenn unterschiedliche ODER-Bedingungen abgefragt werden sollen.

4 Likes

Sehr schön! Das ist genau die Art von generischer Lösung, die mir vorschwebte, und auch gut erklärt. Ich hätte gar nicht gewusst, wonach ich suchen sollte, um sowas in der Doku zu finden…