Clever-Excel-Forum

Normale Version: Anfängerin, 2 Spalten vergleichen und Zeilen zählen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Guten Morgen,

mit Ü50 habe ich leider nur rudimentäre Excelkenntnisse, die ich aber nun ein wenig vertiefen möchte.
Ich habe ein Problem, dass ich nur über eine Hilfskonstruktion lösen kann. Aber gerne, damit ich die Tabelle nicht verändern muss, eleganter lösen möchte.
VBA kann ich leider überhaupt nicht, aber würde da auch einsteigen wollen. Vielleicht ist das Problem ein Einstieg dafür?

Ich habe eine Tabelle mit mehreren Spalten, wobei ich im Moment nur 2 betrachten muss. In etwas wie folgt

A       B       C
5       6       1
7       6       0
3       12     1
9       10     1
17     8       0

Ich möchte nun alle Zeilen zählen, deren Wert aus Spalte A kleiner gleich dem Wert in Spalte B ist. 
Mit "Zählenwenn" kam ich allein nicht weiter, da kann ich zwar die Spalte A angeben, aber als Kriterium kann ich nicht Spalte B angeben.

Mir fiel nur ein, dass ich eine Hilfspalte einfüge, in der ich per "WENN" Abfrage und eine 1 einfüge, wenn die Bedigung A<=B wahr ist.
Dann kann ich per "ZÄHLENWENN" die Zeilen zählen.

Nun die Frage der Fragen, wie kann ich das anders lösen, so dass ich keine Spalte(n) in meine Tabelle einfügen muss und somit die "WENN" Abfrage da umgehe.

Ich hatte gedachte ich könnte irgendwie sagen:

Vergleiche den Wert in Spalte A mit dem in Spalte B, wenn A kleiner gleich B, dann zähle die Zeile (was ich über die Hilfskonstruktion ja mache, aber nun in schön?)

Danke 
Tabbi
Hola,
Code:
=SUMMENPRODUKT((A2:A10<B2:B10)*1)

Gruß,
steve1da
Zitat:Ich möchte nun alle Zeilen zählen, deren Wert aus Spalte A kleiner gleich dem Wert in Spalte B ist. 
Mit "Zählenwenn" kam ich allein nicht weiter, da kann ich zwar die Spalte A angeben, aber als Kriterium kann ich nicht Spalte B angeben.

Guten Morgen,
doch das geht, Beispiel

=ZÄHLENWENN(A2:A12;"<"&B2:B12)

Gruß Holger
@Holger: mit deiner Zählenwenn() Formel bekomme ich ein falsches, gespilltes Ergebnis. Klappt das bei dir?
(26.04.2024, 07:21)echo schrieb: [ -> ]Guten Morgen,
doch das geht, Beispiel

=ZÄHLENWENN(A2:A12;"<"&B2:B12)

Gruß Holger

Diese Idee hatte ich auch in allen Varianten probiert. Egal was und wie ich den Operator < nutze, es kommt immer das Ergebnis 0 heraus.
Dies scheint grundsätzlich so nicht zu funktionieren, denn das war auch meine erste Idee.

(26.04.2024, 07:17)steve1da schrieb: [ -> ]Hola,
Code:
=SUMMENPRODUKT((A2:A10<B2:B10)*1)

Gruß,
steve1da

Danke! Das funktioniert perfekt. 
Es gibt so viele Funktionen, die ich nicht kenne  22
Hi,

es geht auch so:

Code:
=SUMME(WENN(B2:B6-A2:A6>0;1;0))
Hi,

noch ne Variante:

Code:
=SUMME(--(A2:A6<B2:B6))

Bei älterem Excel muss sie ev. mit Strg-Shift-Enter abgeschlossen werden.
Nach dem ich mich nun mit alle vorgeschlagenen Varianten beschäftigt habe und sie zu verstehen versuche, komme ich bei 
Code:
=SUMME(--(A2:A6<B2:B6))
 trotz nachlesen der Beschreibung zur Summenfunktion nicht weiter.

Stumpf abschreiben ist das eine, besser ist es, wenn ich die Formel verstehe und später besser anwenden und erweitern oder anpassen kann.

Die Bedeutung der bei Arrays in der Klammer ist mir klar, hier werden die Werte der beiden Arrays geprüft, ob A < B.
Was ich nicht verstehe, was die bei -- bedeuten und mit einer Summe zusammenhängen.

Würdet Ihr mir das erklären, oder eine Lesehilfe geben?  

Danke

Und Helmut hat Recht mir der wichtigen Info:
Zitat:Bei älterem Excel muss sie ev. mit Strg-Shift-Enter abgeschlossen werden

Tabea
Hi,

wenn Du die Formelauswertung betrachtest, wirst Du sehen, dass pro Zeile WAHR/FALSCH entsteht. -- entspricht *1, d.h. die Wahrheitswerte werden in Einsen und Nullen umgewandelt und summiert.
Hi,

die zwei Minuszeichen sind ein „Dirty Trick“, der hier gebraucht wird. Denn SUMME() summiert nur Zahlen und keine Texte oder Wahrheitswerte. Bei A2:A6<B2:B6 kommen jedoch nur Wahrheitswerte, nämlich Wahr oder Falsch raus.

Mit denen kann Excel prinzipiell rechnen (Wahr=1, Falsch=0), aber SUMME() ignoriert die halt. Daher muss man mit den Wahrheitswerte irgendwas berechnen ohne den Wert an sich zu ändern. Ich verwende dafür halt das doppelte Minus, denn 2x Minus gibt Plus. Damit hat man also nichts geändert.

Ebenso würde statt —x auch x*1, x/1, x+0 oder x-0 oder sonst irgendeine neutrale Berechnung funktionieren.
Seiten: 1 2