Wie kann ich mit Excel die Anzahl der Zellen in einer Spalte zählen, die den Text "wahr" oder "falsch" enthält?


10

Ich habe eine Tabelle mit einer Spalte mit Zellen, in der jede Zelle ein einzelnes Wort enthält. Ich möchte das Vorkommen einiger Wörter zählen. Ich kann die COUNTIF-Funktion für die meisten Wörter verwenden, aber wenn das Wort "wahr" oder "falsch" ist, erhalte ich 0.

        A         B 
1     Äpfel 2
 2     wahr 0
 3     falsch 0
 4     Orangen 1
 5     Äpfel

In der obigen Tabelle habe ich diese Formeln in den Zellen B1, B2, B3 und B4:

=COUNTIF(A1:A5,"apples")
=COUNTIF(A1:A5,"true")
=COUNTIF(A1:A5,"false")
=COUNTIF(A1:A5,"oranges)

Wie Sie sehen können, kann ich Äpfel und Orangen zählen, aber nicht wahr oder falsch. Ich habe auch Folgendes versucht:

=COUNTIF(A1:A5,TRUE)

Das geht aber auch nicht.

Hinweis - Ich verwende Excel 2007.


3
Für das, was es wert ist, habe ich meine Meinung dazu geändert. Ich denke, Excel-Formeln könnten als eine Art deklarative Programmiersprache angesehen werden. Ich denke nicht, dass Turing ohne die Verwendung von VBA vollständig ist, aber es gibt auch keine regulären Ausdrücke - die von der SO-Community als akzeptabel angesehen werden!
Martin Smith

1
Halten Sie sich an die Wildcard-Lösung. =COUNTIF(A1:A5,"<truf")-COUNTIF(A1:A5,"<=trud")zählt jede Zeichenfolge, die mit "true" oder "trud" beginnt , z. B. "trudge".
Scott

1
Jay, diese alte Frage tauchte wegen eines neuen Beitrags wieder auf. Durch das Einbetten einer Antwort in die Frage wird die beabsichtigte Struktur der Site durcheinander gebracht. Können Sie den Antwortteil in eine Antwort verschieben?
Fixer1234

Antworten:


5

Das sollte funktionieren:

=COUNTIF(A1:A5,"*true")

obwohl es eine Zelle zählt, wenn es einen Text vor true gibt. Aber es kann eine grobe Problemumgehung für Sie sein.


1
Guter Vorschlag - ich hatte nicht an Platzhalter gedacht. Ein zweites COUNTIF kann verwendet werden, um Wörter herauszufiltern, die zufällig mit "true" enden. Diese Formel funktioniert: = COUNTIF (A1: A5, " true") - COUNTIF (A1: A5, " ? True") Ich würde diese Antwort positiv bewerten, aber ich bin ein Neuling, der bisher nur 11 Wiederholungen durchführen wird. (Ich kann keine von Stackoverflow übertragen :-(
Jay Elston

1
Hier ist eine andere Variante : =COUNTIFS(A1:A5, "tru?", A1:A5, "*e").
Scott

7

Das zweite Argument der COUNTIF-Formel wird von Excel als durchzuführender Test interpretiert (z. B. können wir "> 3" usw. eingeben). In diesem Fall sieht es so aus, als würde Excel die Zeichenfolgen "true" und "false" in 1 und 0 konvertieren. Dies stimmt nicht mit dem Originaltext überein.

Die einzige Lösung, die ich für dieses Problem kenne, besteht darin, VBA-Code zu schreiben, um das Zählen durchzuführen.

Wenn das Ändern der Eingabedaten akzeptabel ist, ersetzen Sie "true" durch "T" und "false" durch "F" und wechseln Sie dann zu COUNTIF(A1:A5,"T").

Als ich darüber stolperte, gab ich den Kampf auf und änderte die Eingabedaten.

PS: Verwenden von Excel 2003 - das gleiche Problem


Meine vorübergehende Problemumgehung verlief ungefähr so: Ich fügte eine weitere Spalte ein und verwendete die Formel: IF (A1 = "wahr", "T", IF (A1 = "falsch", "F", "")), um die Zellen zu füllen .

Hmm ich kann die Frustration sehen. COUNTIF(A2,">=trud")und COUNTIF(A2,"<=truf")beide arbeiten. COUNTIF(A2,A2)und jede denkbare Variante nicht!
Martin Smith

Es scheint, dass =COUNTIF(G1,">=true")und =COUNTIF(G1,"<=true") für jede mögliche Eingabe von CHAR(1)bis immer 0 zurückgegeben wird , CHAR(255)sodass alles, in das konvertiert wird, völlig unvergleichlich erscheint. Es scheint sich wie ein NULL-Vergleich in einer Datenbank zu verhalten.
Martin Smith

3

Es scheint, dass Excel "true / TRUE" und "false / FALSE" als magische Zeichenfolgen behandelt, wenn sie in Formeln erscheinen - sie werden als Funktionen behandelt: TRUE () und FALSE () anstelle von Zeichenfolgen.

Wenn Sie in einer Spalte true und false zählen müssen, erhalten Sie keine Zählung, wenn Sie als Kriterien "true" oder "= true" verwenden. Es gibt einige Ansätze, mit denen Sie wahr und falsch als Wörter zählen können.

Use a pair of COUNTIF functions. Either of the following works:

=COUNTIF(A1:A5,"*true")-COUNTIF(A1:A5,"*?true")

or

=COUNTIF(A1:A5,"<truf")-COUNTIF(A1:A5,"<=trud")

Create a new column with true converted to "T" and false converted to "F" using the formula:

=IF(A1="true","T",IF(A1="false","F",""))

Then trues and falses can be counted using:

=COUNTIF(A1:A5,"T")
=COUNTIF(A1:A5,"F")

Don't use "true" and "false" to begin with, use something else (such as T and F).

Vielen Dank an Sux2Lose für die Wildcard-Idee und Martin Smith für die Idee, Vergleiche mit den Zeichenfolgen zu verwenden, die sofort größer und kleiner als wahr oder falsch sind.


0

Ich konnte folgende Formeln verwenden:

=COUNTIF(A1:A5,"=apples")
=COUNTIF(A1:A5,"=true")
=COUNTIF(A1:A5,"=false")
=COUNTIF(A1:A5,"=oranges")

Lesen Sie die integrierte Hilfe für COUNTIF. Sie beschreiben die Fähigkeit, Operatoren unter der Bedingung zu verwenden, detaillierter.


1
Funktioniert bei mir nicht Rückgabe 0.
Martin Smith

1
Das funktioniert auch bei mir nicht.
Jay Elston

0

Ich hatte ein ähnliches Problem mit einer SUMPRODUCT-Formel. Durch Entfernen der Anführungszeichen um den Begriff FALSE ergab die Formel mit MS EXCEL 2003 das richtige Ergebnis.


1
Ich erwähnte in der Frage, dass ich = COUNTIF (A1: A5, TRUE) ausprobiert habe und dass ich die 2007-Version von Excel verwendet habe.
Jay Elston

0

Ich konnte das Problem mit der folgenden Formel lösen:

= COUNTIF (A1: A5, "T *").

"T*" ersetzt "True", wenn die Einträge in der Spalte auf nur ein "T" -Wort beschränkt sind.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.