Calc: ZählenWenn

Hallo,

hat sich von LO 3.x zu 4.x irgendetwas mit der Funktion ZählenWenn im Zusammenahng mit regulären Ausdrücken geändert?

Ich nutze für eine Schulnotentabelle, in der also Noten als Texte in Form von 1+, 2-, 4 usw. eingetragen sind, zum Zusammenrechnen folgende Formel:

=WENN(ZÄHLENWENN(E7:E46;"=[123456\-\+]*")<>0;ZÄHLENWENN(E7:E46;"=[123456\-\+]*");"")

Sobald etwas in einer der Zellen steht, erhalte ich dort eine 40 als Ergebnis, also die Anzahl der Zellen überhaupt. Ich möchte aber zählen, wie viele Noten eingetragen sind.

In den vermeintlich freien Zellen stehen aber Formeln, die das Ergebnis "" haben. Hier steht also schon Text, eben der leere Text. Ein einfaches
=Anzahl2(E7:E46)
liefert mir auch die 40 als Ergebnis.

Früher (ich weiß nicht, bis zu welcher Version) hat das mal geklappt. Reguläre Ausdrücke in Formeln sind in den Optionen eingeschaltet.

Ich arbeite echt gerne mit LO, aber zurzeit fühle ich mich von Calc ziemlich ausgebremst. Meine komplexen Tabellen funktionieren nicht mehr... (auch bedingte Formatierungen sind zu großen Teilen einfach verschwunden).

Micha

Hallo Micha,

hat sich von LO 3.x zu 4.x irgendetwas mit der Funktion ZählenWenn im
Zusammenahng mit regulären Ausdrücken geändert?

Ich nutze für eine Schulnotentabelle, in der also Noten als Texte in
Form von 1+, 2-, 4 usw. eingetragen sind, zum Zusammenrechnen folgende
Formel:

=WENN(ZÄHLENWENN(E7:E46;"=[123456\-\+]*")<>0;ZÄHLENWENN(E7:E46;"=[123456\-\+]*");"")

Sobald etwas in einer der Zellen steht, erhalte ich dort eine 40 als
Ergebnis, also die Anzahl der Zellen überhaupt. Ich möchte aber zählen,
wie viele Noten eingetragen sind.

=WENN(ZÄHLENWENN(E7:E46;"[123456\-\+]+")<>0;ZÄHLENWENN(E7:E46;"[123456\-\+]+");"")

führt zum Ziel.
Ich habe einmal in der Hilfe nachgesehen:
* Findet keines oder mehr der Zeichen vor dem "*".

Und da bei Dir "keins" zutrifft ...

Nur stimmt die Beschreibung auch mit früheren Versionen überein. Ob da
etwas entsprechend angepasst wurde kann ich nicht sagen. Aber nach der
Hilfe ist mir unklar, weshalb bei einem * überhaupt gesucht wird ...

Gruß

Robert

Hallo

Hallo,

hat sich von LO 3.x zu 4.x irgendetwas mit der Funktion ZählenWenn im
Zusammenahng mit regulären Ausdrücken geändert?

Ich nutze für eine Schulnotentabelle, in der also Noten als Texte in
Form von 1+, 2-, 4 usw. eingetragen sind, zum Zusammenrechnen folgende
Formel:

=WENN(ZÄHLENWENN(E7:E46;"=[123456\-\+]*")<>0;ZÄHLENWENN(E7:E46;"=[123456\-\+]*");"")

Der reguläre Ausdruck ist Schrott, das =Gleichheitszeichen hat da nichts zu suchen

=WENN(ZÄHLENWENN(E7:E46;"^[1-6][-+]?$")<>0;ZÄHLENWENN(E7:E46;"^[1-6][-+]?$");"")

Werner

Robert Großkopf schrieb:

=WENN(ZÄHLENWENN(E7:E46;"[123456\-\+]+")<>0;ZÄHLENWENN(E7:E46;"[123456\-\+]+");"")

führt zum Ziel.
Ich habe einmal in der Hilfe nachgesehen:
* Findet keines oder mehr der Zeichen vor dem "*".

Danke für euch beiden für die Vorschläge zur Korrektur.
Bleibt nur die Frage, warum das bisher immer gut geklappt hatte...

Micha