Supportnet / Forum / Datenbanken
DomAnzahl im Bericht - Null-Wert zählen
Frage
Hallo,
ich verwende Access 97.
In einem Bericht möchte ich mit einen Steuerelement die Anzahl der leeren Datensätze bzw. die Felder eine Tabelle zählen lassen, welche keinen Inhalt haben.
In Abfragen kann man den Befehl "IST NULL" als Kriterium verwenden und es werden alle Datensätze, angezeigt die in der Spalte, wo das Kreterieum "IST NULL" definiert ist, keinen Wert aufweisen.
Im Bericht würde ich das folgendermaßen machen:
nachfolgende Zeichenkette als Steuerelementinhalt:
=DomAnzahl("AEPK";"Teilnehmerliste Gesamt";"[AEPK]= '1'")
Auf diese Weise werden alle Datensätze gezählt, die in der Spalte AEPK den Wert 1 besitzen.
Wie müsste die Formel aussehen, wenn ich die Anzahl der Datensätze haben möchte, die keinen Wert besitzen?
Hat da jemand eine Idee?
Viele Grüße, D.
Antwort 1 von roland a
hallo,
versuch mal =""
versuch mal =""
Antwort 2 von Marie
@Roland: nö, das kann nicht funktionieren mit ""
=(DomAnzahl("*";"Teilnehmerliste Gesamt")-DomAnzahl("AEPK";"Teilnehmerliste Gesamt"))
Also DCount zählt immer nur die Datensätze mit Inhalt, es sei denn, du Schreibst DCount(*), dann werden alle Datensätze gezählt.
Demnach kannst Du jetzt Deine leeren Datensätze Zählen, indem Du alle zählst und dann die mit Inhalt abziehst. :-))))
Gruß Marie
=(DomAnzahl("*";"Teilnehmerliste Gesamt")-DomAnzahl("AEPK";"Teilnehmerliste Gesamt"))
Also DCount zählt immer nur die Datensätze mit Inhalt, es sei denn, du Schreibst DCount(*), dann werden alle Datensätze gezählt.
Demnach kannst Du jetzt Deine leeren Datensätze Zählen, indem Du alle zählst und dann die mit Inhalt abziehst. :-))))
Gruß Marie
Antwort 3 von MickK
Versuchs mal mit:
=DomAnzahl("AEPK";"Teilnehmerliste Gesamt";"[AEPK]= NULL)
Dieses 'Null' bedeutet nicht 0 sondern ist bei Datenbanken die Bezeichnung für einen Null-Wert, soll heissen 'kein Inhalt', nada oder nickes.
Gruss
Mick
=DomAnzahl("AEPK";"Teilnehmerliste Gesamt";"[AEPK]= NULL)
Dieses 'Null' bedeutet nicht 0 sondern ist bei Datenbanken die Bezeichnung für einen Null-Wert, soll heissen 'kein Inhalt', nada oder nickes.
Gruss
Mick
Antwort 4 von Draighton
Hi, danke für eure Hilfe.
-> Marie: Dein Lösungsvorschlag ist optimal. Muss nach andere zusammenhängende Kriterien abziehen, komme dann aber auch auf den gewünschten Wert.
-> Mike: Hatte einen ähnliche Gedanken wie du. Aber ich bekomme immer nur den Wert 0 angezeigt. Auch, wenn ich die Anführungsstriche setzte, die du am Ende vergessen hast ;-). ..."AEPK]=Null")
Nochmals Danke für eure Hilfe. Wem noch was einfalle sollte, gerade die Idee mit einem bestimmten Befehl für den Null-Wert, sollte posten. Freue mich über jeden Hinweis oder Gedanken.
Viele Grüße, D.
-> Marie: Dein Lösungsvorschlag ist optimal. Muss nach andere zusammenhängende Kriterien abziehen, komme dann aber auch auf den gewünschten Wert.
-> Mike: Hatte einen ähnliche Gedanken wie du. Aber ich bekomme immer nur den Wert 0 angezeigt. Auch, wenn ich die Anführungsstriche setzte, die du am Ende vergessen hast ;-). ..."AEPK]=Null")
Nochmals Danke für eure Hilfe. Wem noch was einfalle sollte, gerade die Idee mit einem bestimmten Befehl für den Null-Wert, sollte posten. Freue mich über jeden Hinweis oder Gedanken.
Viele Grüße, D.
Antwort 5 von MickK
Ich bins nochmal. Sorry wg. der fehlenden ". Ich habe mich auch etwas ins Bockshorn jagen lassen mit der Version die ich Dir geschickt habe. Aber so klapt es:
=DomAnzahl("*";"Teilnehmerliste Gesamt";"[AEPK]Is NULL")
Gruss
Mick
=DomAnzahl("*";"Teilnehmerliste Gesamt";"[AEPK]Is NULL")
Gruss
Mick
Antwort 6 von MickK
muss natürlich
=DomAnzahl("*";"Teilnehmerliste Gesamt";"[AEPK] Is NULL")
heissen.
=DomAnzahl("*";"Teilnehmerliste Gesamt";"[AEPK] Is NULL")
heissen.
Antwort 7 von Marie
Warum denn einfach wenn's auch umständlich geht?
Auf die Idee bin ich jetzt nicht gekommen, hast Du es ausprobiert? Find jetzt grad meine Datenbank nicht mehr wo ich rumprobiert hab. Aber irgendwie erscheint es logisch, dass es so gehen müsste. :-)
Auf die Idee bin ich jetzt nicht gekommen, hast Du es ausprobiert? Find jetzt grad meine Datenbank nicht mehr wo ich rumprobiert hab. Aber irgendwie erscheint es logisch, dass es so gehen müsste. :-)
Antwort 8 von Draighton
Hallo,
vielen Dank für eure Informationen.
Ich hätte da noch ein Frage zur Syntax.
Und zwar möchte ich eine ähnliche "Abfrage" ausetzen, die nach bestimmten Zeiträumen sucht. Dabei möchte ich die diverse Möglichkeiten auf einmal zulassen:
=DomAnzahl("[Hotel]";"Teilnehmerliste gesamt";"[Zimmerart] = 'EZ' AND [Hotel] = 'SIDE' AND [Anreise] = '23.10.03' AND [Abreise] = '24.10.03'")
Klappt wunderbar. Ich möchte allerdings lieber für die Abreise das Kriterium < oder = 25.10.03 einsetzen.
Ich schreibe es so:
=DomAnzahl("[Hotel]";"Teilnehmerliste gesamt";"[Zimmerart] = 'EZ' AND [Hotel] = 'SIDE' AND [Anreise] = '23.10.03' AND [Abreise] =< '24.10.03'")
Wenn ich aber = und < vertausche bekomme ich einen Fehler. Ist das so oder ist das grundsätzlich kein geeigneter Weg um diese Berechnung durchzuführen?
Über Bemerkungen, Anregungen, Tipps und Hinweise würde ich mich freuen.
VG, D.
vielen Dank für eure Informationen.
Ich hätte da noch ein Frage zur Syntax.
Und zwar möchte ich eine ähnliche "Abfrage" ausetzen, die nach bestimmten Zeiträumen sucht. Dabei möchte ich die diverse Möglichkeiten auf einmal zulassen:
=DomAnzahl("[Hotel]";"Teilnehmerliste gesamt";"[Zimmerart] = 'EZ' AND [Hotel] = 'SIDE' AND [Anreise] = '23.10.03' AND [Abreise] = '24.10.03'")
Klappt wunderbar. Ich möchte allerdings lieber für die Abreise das Kriterium < oder = 25.10.03 einsetzen.
Ich schreibe es so:
=DomAnzahl("[Hotel]";"Teilnehmerliste gesamt";"[Zimmerart] = 'EZ' AND [Hotel] = 'SIDE' AND [Anreise] = '23.10.03' AND [Abreise] =< '24.10.03'")
Wenn ich aber = und < vertausche bekomme ich einen Fehler. Ist das so oder ist das grundsätzlich kein geeigneter Weg um diese Berechnung durchzuführen?
Über Bemerkungen, Anregungen, Tipps und Hinweise würde ich mich freuen.
VG, D.

