Geändertes Verhalten von Zählenwenn bei verbundenen Zellen ab LO Calc 6.1

Hallo,

ich habe ein geändertes Verhalten von LO Calc beim Zählenwenn() Befehl über verbundene Zellen festgestellt und ich würde gerne wisse ob das Absicht ist, oder ein Bug. Ich konnte im Bugtracker und in den Versionshinweisen nichts finden, was mich wundert, weil das für mich eine ziemlich zentrale Änderung darstellt, die mir aktuell ältere Dokumente zerschießt.

Zur Reproduktion des Problems: Zelle A1 und B1 verbinden. Eine “0” einfügen. In Zelle C2 folgenden Befehl eintragen: =ZÄHLENWENN(A1:A2;"<>0")

In Version 6.0.6.2 und davor ergibt die Formel “0”. Es gibt eine Zelle, und der Inhalt ist nicht von 0 verschieden. In neuren Versionen von LO Calc ergibt das Ergebnis “1”. Die verbundene Zelle wird als zwei Zellen gezählt, wovon eine einen von 0 verschiedenen Inhalt hat.

Seltsamerweise hat sich das Verhalten von LO Calc nicht geändert, wenn es um die Referenzierung geht. Die verbundene Zelle kann über =A1 referenziert werden, B1 wird also leere Zelle ausgegeben, =B1 gibt also “0” aus. Das Problem scheint spezifisch das Zählen bei Zählenwenn() zu sein.

Soweit ich das nachvollzien kann, liegt es aber daran das die leere Zelle A2 als der Bedingung genügend betrachtet wird, obwohl ein IF(A2:A2) korrekterweise ein FALSCH liefert (mach mal =COUNTIF(A2:A2;"<>0") - das gibt schon die 1 (COUNTIF=ZÄHLENWENN, IF=WENN, Ich benutze nur die englischen Funktionsnamen). Für mich sieht das wie ein Bug aus - denn =IF(A1:A1,"<>0") liefert FALSE und =IF(A2:A2,"<>0") liefert ebenfalls FALSE.

Meiner Meinung nach hat das nichts mit der Verbindung der beiden Zellen A1 und B1 zu tun. Ich kann die auch auftrennen und erhalte dennoch die 1 oder ein beliebiges =COUNTIF(A2:A1000;"<>0") liefert die Anzahl der Zellen in dem Range (wenn da nichts drin steht - die Zellen also “empty” sind)

PS: Ich habe diese Frage in etwas verallgemeinter Form in den englischen Teil mal weitergereicht - siehe hier- Mich würde es allerdings wundern, wenn am Ende die Empfehlung nicht lautet “Erstelle bitte einen Fehlerbericht” oder jemand mir die entsprechende Fehlernummer nennt.

Hallo,

Kurz: Das ist mit Absicht so geschehen - siehe #tdf117433 und hat - wie in meinem Kommentar schon angedeutet - nichts mit den verbundenen Zellen zu tun, sondern mit der Bedingung <>0 die nun anders interpretiert wird.

Lang: Wie so oft ist die Antwort durch den ODF Standard gegeben - siehe ODF 1.2 Part 2 4.11.8 Criterion: - Dort steht:

For <>, if the value is not empty it matches any cell content except the value, including empty cells.

Mit value ist dabei gemeint, was hinter dem <> steht (also in Deinem Fall die 0).

Ehrlich gesagt verstehe ich die Sache auch nicht, warum das mal so und mal so rauskommt, aber man scheint sich einig zu sein, dass es so jetzt richtig ist (was ich angesichts “…-including empty cells.” auch als zumindest standardkonform betrachten würde)

Update: Wenn Du leere Zellen nicht mitzählen möchtest, kannst Du als Ersatz =SUMPRODUCT(COUNT(IF(A1:A2<>0))) verwenden. Beachte: Hier ist COUNT mit IF als 2 verschachtelte Funktionen verwendet und mit SUMPRODUCT (deutsch: SUMMENPRODUKT) wird die Matrix-Funtionalität erzwungen.

Vielen dank schon einmal für die ausführliche Antwort und die Bemühungen. Also wenn ich das richtig verstehe, kann man das Problem darauf eindampfen, dass Zählenwenn / Countif vorher bei “<>0” leere Zellen nicht mitgezählt hat, und sie nun mitzählt. Eine leere Zelle ist für mich auch ungleich “0”, von daher eigentlich ein schlüssiges Verhalten, aber eine krasse Änderung, je nachdem wie man seine Dokumente vorher aufgebaut hat. Dann hoffe ich mal, dass es jetzt so bleibt, und ich fang mal an ein paar Formeln zu ändern.

Hallo - so kann man das zusammenfassen.

Wenn die Antwort deine Frage beantwortet, oder geholfen hat, Dein Problem zu lösen, dann klick bitte das kleine Häkchen (:heavy_check_mark:) direkt neben der Antwort (wird grün dabei).

Und jetzt weiß ich auch, warum ich mir selbst nicht helfen konnte Bug 117433 taucht nicht auf, wenn man im Bugtracker einfach nach “Countif” sucht. Und das obwohl Countif() im Titel steht. Ziemlich ätzend, wenn ich ehrlich bin.
Siehe hier: https://bugs.documentfoundation.org/buglist.cgi?quicksearch=COUNTIF

@chillman - Ich finde da auch selten etwas, mit dem Bugziila Frontend konnte ich, unabhängig von der Software, die damit getracked wird, immer schon relativ wenig anfangen.