Hallo Markus,
zur Sicherheit geht die Mail auch direkt an dich, falls du nicht bei der
Liste angemeldet bist. Das solltest du dann allerdings tun, weil man
normalerweise nur über die Liste kommuniziert (auch damit man überhaupt
die Reihenfolge mitbekommt), du würdest also Antworten sonst gar nicht
bekommen.
Ich habe beim Aufräumen diese Anfrage gefunden. Ich hatte sie sicher
nicht näher angeschaut, weil ich Calc praktisch nie verwende und deshalb
warten wollte, ob jemand anders antwortet. Da das offensichtlich nicht
der Fall gewesen ist, habe ich nun doch mal selber draufgeschaut.
Ich habe auch eine Weile gesucht, bis ich darauf gekommen bin, woran das
wahrscheinlich (denn ich kenne deine Datei ja nicht) liegen könnte,
geholfen hat mir das parallele Ausprobieren mit DBANZAHL, das ja nur
numerische Werte auswertet, da kann man das in etwas anderer Form
ausprobieren.
Ich denke, dass dein Problem darin liegt, dass du die übliche
Spaltenzählung von Calc, wenn man nicht mit den Buchstaben arbeitet, auf
diese Funktion überträgst, was naheliegt, aber laut der Beschreibung in
der Hilfe
"um die Spalte beginnend mit 1 innerhalb des Datenbankbereichs
festzulegen"
falsch ist, die Spalten im Datenbankbereich werden beginnend mit 1
gezählt; sicher verwirrend, aber das ist das ewige Problem, ob mit 0
oder 1 begonnen wird, für beides gibt es Argumente.
Deine Aussage
"Trage ich einen beliebigen Wert in in Spalte 0 ... ein"
ist nun nicht ganz eindeutig, aber ich gehe davon aus, dass du die erste
Spalte des Datenbankbereichs, also Spalte C, meinst. Unter dieser
Annahme kann ich das beschriebene Verhalten nachvollziehen: die Hilfe im
Funktionsassistenten sagt, dass nur die Fälle gezählt werden, die
nichtleere Zellen enthalten (zu ergänzen wäre: in der durch
"Datenbankfeld" definierten Spalte), und genau das passiert, wenn meine
Annahme stimmt. Die allgemeine Hilfe ist hier zwar nicht falsch, aber
man muss aus "numerische oder alphanumerische Werte" erst schließen,
dass dann eben leere Inhalte ausgeschlossen sind.
Immer unter der genannten Annahme: deine Beschreibung lässt annehmen,
dass die erste Spalte des Datenbankbereichs häufig erst einmal noch
nicht gefüllt ist, so dass die Wahl von 1 als zweitem Parameter sicher
nicht angebracht ist; da du offenbar die zweite Spalte des
Datenbankbereichs wählen wolltest (und nur aufgrund der Annahme, dass
die Zählung bei 0 losgeht, 1 gesetzt hast), solltest du es mit 2 als 2.
Parameter versuchen. Wenn deine Wahl der 1 wohlüberlegt war und nur
durch die Fehlinterpretation, dass auch für diese Funktion von 0 ab
gezählt wird,zum falschen Ergebnis führte, sollte alles OK sein.
Wenn es noch weitere Unklarheiten gibt: Diese Wahl der 2 würde bedeuten,
dass du sicher bist, dass von Anfang an in dieser Spalte immer Werte
stehen, was ich mangels Information zu deiner Tabelle nicht beurteilen
kann. Wenn das nicht gilt, wird ein weiterer Schritt notwendig: die
Funktion zählt laut Doku (ich habe das nicht detailliert getestet) nur
Zeilen, die einen nicht leeren Eintrag in der durch "Datenbankfeld"
definierten Spalte haben: du müsstest dann wohl eine Summenspalte
einführen, die jeweils die Zeilensummen enthält, und diese abfragen (die
Suchkriterien dürften ja die im Datenbankbereich leeren Zeilen ohnehin
nicht erfüllen).
Es macht vielleicht das Problem etwas klarer bei der Untersuchung, wenn
du statt der Spaltennummer (relativ zum Datenbankbereich, beginnend ab
1) die Zelle der Überschrift angibst (vgl. die allgemeine Hilfe), was
bei dir dann wohl D9 wäre, wenn ich das richtig interpretiere. Ich gehe
da immer von dem Beispiel in der Hilfe aus, das ich auf deine Angaben
angepasst habe, so wie ich sie verstanden habe. Ich habe nicht
ausprobiert, ob und wie das ohne Überschriften vielleicht gehen könnte.
Und die Beschreibung "Datenbankfeld gibt die Spalte an, wo die Funktion
ausgeführt wird" ist jedenfalls sehr unklar, ich habe das erst nach all
den Tests kapiert, dass das offenbar nur bedeutet, wo der Check über
"nichtleer" bzw. bei DBANZAHL über "nicht numerisch" durchgeführt wird.
Ich schaue mir die englische Doku noch an, wenn mir etwas Gescheites
einfällt, werde ich auch noch eine Korrektur der Doku anregen.
Gruß
Gerhard
Am 15.02.2019 um 08:10 schrieb Markus Mueller:
Liebe Liste,
ich habe seit vielen LO-Versionen bis aktuell Version: 6.1.5.2 (x64)
(Windwows 7) folgende Auffälligkeit, die ich eigentlich für einen Bug
halte. Wer kann sie nachvollziehen?
Ich werte eine Tabelle mit Zahlen aus. Unter anderem ermittle ich in
der zweiten Spalte (Calc fängt bei 0 an die Spalten zu zählen, in
DBANZAHL2 also die "1" als 2. Argument) des Tabellenbereichs die
Anzahl von Werten, die einem bestimmten Kriterium genügen, mit:
=DBANZAHL2($C$9:$AA$37;1;$Krit.$V$4:$Krit.$V$5)
Dabei zeigt sich ein merkwürdiges Verhalten. Ist die erste Spalte
(Spalte "0" in Calc-Zählweise) in einer Zeile leer, so wird auch ein
den Kriterien genügender Wert in der Zelle rechts daneben (gleiche
Zeile, Spalte 1) NICHT gezählt (d.h. das Ergebnis von DBANZAHL2 ist um
1 zu niedrig). Trage ich einen beliebigen Wert in in Spalte 0
(selbstverständlich immer noch in der gleichen Zeile) ein, wird
korrekt gezählt.
Das ganze ist insofern relevant, als dass sich die Tabelle erst mit
der Zeit vollständig mit Werten füllt, die Zwischenergebnisse (also
auch die mit DBANZAHL2 ermittelten Werte) aber durchaus interessant sind.
Besten Dank für Eure Beobachtungen!
Markus
--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.