Fehlermeldung bei einer DomSumme Abfrage

Nabend zusammen,

stehe wieder mal vor der Frage ob ich den PC gleich zum Fenster rausschmeiße oder selber springe.

Ich habe mir ein Formular gezimmert, wo über DomSumme Werte addiert werden sollen. Nun habe ich folgendes beim Steuerelementeinhalt eingegeben.=DomSumme("[Angeschrieben]";„Eichjahr01“;"[Ortsteiler]=" & [Test4])

[Angeschrieben] erhält den Wert eins aus einem Optionsfeld
„Eichjahr01“ ist die Abfrage die es zu öffnen gilt
[Ortsteiler] ist das Feld in der Abfrage
[Test4] ist das Feld aus dem Formular wo ich ausgeschrieben den Ortsteilnamen eingebe.

Ich muss dazu sagen, dass es sich bei den Daten um einen Import aus Excel handelt und ich da schon mal meine Mühe mit Zahlen hatte.

Jedenfalls bei der Eingabe oben erhalte ich die Fehlermeldung
„Der Ausdruck, den Sie als Abfrageparameter eingegeben haben, hat folgenden Fehler verursacht: Das Objeklt enthält nicht das Automatisierungsobjekt ‚Liblar‘“

‚Liblar‘ ist dabei im Feld [Test4] eingeben.

Jetzt kommt die Krux, wenn ich anstatt das Feld [Ortsteiler] das Feld [Ortskennzahl] versuche- welche auch in einem Feld hinterlegt ist, dann funktioniert das System. Nur halt eben nicht wenn ich den Ort schreibe.

Weiß da jemand wo ich den Fehler mache- Die Feldbezeichnungen und das Schreiben habe ich x-Mal kontrolliert- aber ich kriege einfach den Wert nicht raus wenn ich im Feld [Test4] den Namen des Ortes schreibe.

Herzliche Grüße

Roland

Nabend alleine,

=DomSumme("[Angeschrieben]";„Eichjahr01“;"[Ortsteiler]="
& [Test4])

‚Liblar‘ ist dabei im Feld [Test4] eingeben.

Weiß da jemand wo ich den Fehler mache

ja

nun ganz einfach, wie du richtig schreibst, ist ‚Liblar‘ ein TEXT!
Wichtig dabei ist und bleiben die Anführungszeichen !!!

Lösung:

=DomSumme("[Angeschrieben]";„Eichjahr01“;"[Ortsteiler]= ‚"
& [Test4] & "‘")

siehe die zusäztlichen ’ hinter dem = Zeichen und zusätzlich am Ende:
vorher: [Ortsteiler]= Liblar
nachher: [Ortsteiler]= ‚Liblar‘

Grüße aus Schwerin
Wolfgang
(Netwolf)

Guten Morgen!

Das ist er wirklich, Klappt einwandfrei! Ist mir ja fast peinlich solche Fragen zu stellen, aber ich habe das Buch Microsoft Access 2003 gewälzt und mir die Augen ausgeschaut- da habe ich diesen Hinweis so nicht gefunden.
Vielleicht sollte ich das Werk wirklich einmal strukturiert von vorne bis hinten durcharbeiten.

Nun denn, nochmals vielen Dank für Deine Hilfe!!

Gruß

Roland

HAllo Wolfgang,

bei mir stellt sich jetzt immer noch ein kleiner Fehler ein, obschon ich genau wie Du beschrieben hast vorgegangen bin und die Sache auch korrekt zurückgegeben wird, "Microsoft Access kann das in Ihrem Ausdruck angesprochene Feld ‚Forms‘ nicht finden. Habe ich da noch etwas vergessen?

Dann noch eine Frage, ich möchte gerne anstatt des Felds Ortsteiler jetzt das Feld WechslelDatum eingeben. Das soll nun den Abgleich mit dem im Formular angegebenen Datum durchführen und mir die Summe der Einträge aus der Spalte „gewechselt“ zurückgeben.
Sinngemäß also so:

=DomSumme("[Gewechselt]";„Eichjahr01“;"[Wechseldatum]="
& [DatumausFormular])

Irgendwie frisst er das Datum nicht. Kannst Du mir noch einen Tip geben.

Gruß

Roland

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Roland,

bei mir stellt sich jetzt immer noch ein kleiner Fehler ein,
obschon ich genau wie Du beschrieben hast vorgegangen bin und
die Sache auch korrekt zurückgegeben wird, "Microsoft Access
kann das in Ihrem Ausdruck angesprochene Feld ‚Forms‘ nicht
finden. Habe ich da noch etwas vergessen?

prüfe deine Abfrage, in der du suchst. Da kommt das FORMS irgendwo als Teil einer Variabelen vor dessen Syntax nicht stimmt.

=DomSumme("[Gewechselt]";„Eichjahr01“;"[Wechseldatum]="
& [DatumausFormular])

Irgendwie frisst er das Datum nicht. Kannst Du mir noch einen
Tip geben.

Datumswerte sollten erst in das SQL-Datum Format umgewandelt und / oder auch nur als String behandeln werden.
Also auch hier die ’ hinzufügen.

Grüße aus Schwerin
Wolfgang
(Netwolf)

Hallo Wolfgang,

den Fehler mit den Forms habe ich zwar immer noch nicht, aber es funktioniert ja. Das mit dem Datum habe ich auch hinbekommen. Aber die Sache mit dem DomSumme macht den PC furchtbar träge und ich weiß nicht, ob das an den 9000 Datensätzen liegt oder an den Formeln. ICh habe z.B. ein Optionsfeld wo zwischen Nachmittag und Vormittag unterschieden wird. Der Wert wird dann in ein gleichnamiges Feld gespeichert. Suche ich nun mit domSumme die Summe der Einträge z.b. Vormittag an einem bestimmten Datum, rechnet der PC so zehn Sekunden bis er den Wert ausgiebt. Ändere ich die Option dann von Vormittag auf NAchmittag ist es so als wenn das Teil das gar nicht registrieren würde. Er müsste ja folgerichtig die Summe Vormittag um eins reduzieren und die Summe NAchmittag um eins erhöhen. Schließe ich das Formular und rufe es erneut auf, dann stimmen die Werte. Hast Du vielleicht eine Ahnung, ob da etwas falsch läuft??

HErzliche Grüße
Roland, der jetzt endlich Feierabend macht

Hallo Roland,

Schließe ich das Formular und rufe
es erneut auf, dann stimmen die Werte. Hast Du vielleicht eine
Ahnung, ob da etwas falsch läuft??

das liegt am aktualisieren des Formulares bzw. des Feldes.

mit der Eigenschaft Requery kannst du das Feld und/oder das Formular aktualisieren lassen.

Beispiel: Me.Deinfeld.requery
oder fürs Formular: Me.Requery

Grüße aus Schwerin
Wolfgang
(Netwolf)

Guten Morgen Wolfgang,

ich werde das jetzt gleich mal ausprobieren. Aber wie so oft ersticke ich fast in Problemen. Ich habe es gerade einmal über eine Rutine mit For und Next nach guter alter Basic Schule versucht und dabei ist mir aufgefallen, dass er obschon der Ort „liblar“ fast einhundert mal in der Abfrage vorkommt, diese nur achtunfünfzig mal zählt. Er gibt mir damit genau die gleich Anzahl aus wie über den Befehl Domanzahl.
Nun könnte ja in der Ortsteilspalte etwa der Ort „Liblar“ irgendwie anders geschrieben sein, aber beim Aufruf des Formulars verknüpfe ich dieses genau mit der Ortslage als Filterkriterium und da gibt er mir brav in der Liste die jeweiligen einhundert Einträge für Liblar aus.
Ich weiß, dass ist jetzt für Dich fast nicht nachzuvollziehen aber seit gestern hexe ich daran rum und kapier einfach nicht, warum er bei der Verknüpfung alle gefilterten Datensätze anzeigt aber bei der Abfrage mit DomAnzahl oder bei der Rutine nur 58.

Gruß nach Schwerin

Roland

Hallo Roland,

prüfe die originale Tabelle, wieviele Einträge findest du dort?
Prüfe in der Abfrage die Beziehungen, ob dadurch Einschränkungen vorgenommen werden.

Erstelle eine neue Abfrage, oder nutze direkt die originale Tabelle für die Auswertung mit DomSumme.

Grüße aus Schwerin
Wolfgang
(Netwolf)

Guten Morgen Wolfgang,

Danke für Deine Hilfe. DEr Fehler lag tatsächlich in den von Excel importierten Daten. Obschon der Ort „Liblar“ in der Spalte eindeutig geschrieben war, hat sich das Problem damit erledigt, dass ich die Spalte aus Excel einfach nochmal in die Access Datenbank kopiert habe. Aber frag nicht was das gedauert hat. Also auf ein neues-hoffentlich bin ich bis Weihnachten mit dem Kram durch.

Gruß

Roland