2014-11-12 17 views
5

Ich habe Probleme mit der CountIf-Funktion in Excel.Fehler in Excel CountIF-Funktion

=COUNTIF(A:A,A2) 

Die A-Säule besteht aus den folgenden Artikel:

0107791489614255200011140926107503100513 

0107791489614255200011140926107503100457 

0107791489614255200011140926107503100518 

0107791489614255200011140926107503100503 

0107791489614255200011140926107503100519 

0107791489614255200011140926107503100444 

0107791489614255200011140926107503100521 

0107791489614255200011140926107503100438 

0107791489614255200011140926107503100449 

0107791489614255200011140926107503100443 

0107791489614255200011140926107503100501 

0107791489614255200011140926107503100455 

die Formelergebnisse bis 12, obwohl diese Menge von Zeichenketten sind nicht wirklich die überhaupt gleich. Es zählt diese Strings als ähnliche Strings, ich denke, das hängt mit seiner Stringlänge zusammen?

Was denkst du? Ich schätze Ihre Hilfe.

+0

Es ist Version 14.0.7128.5000 –

+0

Ich würde empfehlen, nicht solche IDs zu verwenden, die nur Ziffern enthalten. Wie Sie gesehen haben, gibt es Probleme mit ihnen, weil sie oft in einen numerischen Kontext geraten, wenn sie es nicht sollten. Dies gilt nicht nur für Berechnungen, sondern auch für die Datenübertragung. Wenn sie mit einem Buchstaben beginnen würden, würden diese Probleme nicht auftreten. –

Antwort

3

Wenn Sie die Strings mit einem einzelnen Apostroph voranstellen, wird die Situation nicht behoben. COUNTIF ist so ausgelegt, dass Daten nach Möglichkeit unabhängig vom Datentyp der betreffenden Werte als numerisch interpretiert werden. Dies ist manchmal hilfreich, manchmal (wie hier) nicht.

SUMPRODUCT zeigen diese Eigenschaft nicht:

=SUMPRODUCT(0+($A$1:$A$12=A2)) 

gibt 1 zurück, je nach Wunsch.

Grüße

+0

+1, guter Rat auf dem COUNTIF - obwohl es auf Excel2013 funktioniert. – Bathsheba

+0

Ah, Entschuldigung. Interessant. Vielleicht könnten Sie das in Ihrer Antwort explizit machen? –

+0

Vielen Dank für diese Problemumgehung !!!!!! :) –

4

+1, eine gute Frage. Nicht wirklich ein Bug, sondern ein Feature!

Dies liegt daran, dass Excel implizit die Eingaben in seinen internen numerischen Typ konvertiert und dabei die Genauigkeit verliert. Der interne numerische Typ von Excel ist eine IEEE-Gleitkommazahl mit doppelter Genauigkeit. (Obwohl es schlaue Dinge mit Formatierung und Fehlerausbreitung macht, scheint es, dass Summen wie 1/3 + 1/3 + 1/3 richtig sind).

Da sie so ähnlich sind, vergleichen sie alle als gleichwertig.

Eine Abhilfe wäre Präfix jeder Zeichenfolge mit ' (einfaches Zitat), die die Konvertierung in den numerischen Typ verhindert. Dann gibt der COUNTIF Wert 1 zurück. (Zumindest in meiner Version von Excel; 2013).

+0

Hallo. Ich habe es gerade ausprobiert, aber es funktioniert trotzdem nicht. Ich habe sogar versucht, die Formatierung zu ändern, um es nur als TEXT zu lesen, aber es gibt immer noch 12. –

+0

Präfix jeder Zeichenfolge mit dem einzelnen Zitat. Es wird dann in allen Versionen von Excel (sicherlich seit Excel 97) funktionieren. – Bathsheba

+0

Ja, ich habe das versucht, immer noch 12 zurück. Das nervt mich den ganzen Tag. –