Guten Tag.
daran liegt es nicht sonst hätte die Meldung
gehießen:„Fehlende Klammer…“ oder so.
Du bist echt gut: Stellst eine erwiesenermaßen fehlerhafte Syntax ein, baust noch einen zusätzlichen Fehler drauf (die fehlenden Klammern) und erwartest dann, dass Ralf weiß, dass die fehlenden Klammern nur fehlen, damit dein Rätsel nicht so einfach ist. Und dann weißt du es auch noch besser! Es gibt weder die Meldung „fehlende Klammer“ noch die Meldung „oder so“ in Access. Er hätte dann gesagt „fehlerhafte Syntax im Abfrageausdruck blablablubb“.
Select[PK-1].ANZ FROM[PK-1]WHERE((([PK-1].Datum nach Monaten)=Januar 2008
Das schrubst du so 1:1 hier hin. Erster Syntaxfehler: fehlende Blanks hinter SELECT, vor FROM, vor WHERE, hinter WHERE. Zweiter Syntaxfehler: fehlende Anführungszeichen bei Januar 2008, wie von Franz bemerkt. Dritter Syntaxfehler: Datum nach Monaten ist kein Feldname, gehört, wenn du schon auf Blanks im Feldnamen bestehst, auch in eckige Klammern. Vierter Syntaxfehler: schließende Klammern fehlen.
Weiter gehts mit Logik: [Datum nach Monaten] muss, damit die Anfrage mit =„Januar 2008“ funktioniert, zwingend ein Text feld sein. Wenn das Feld ein Datumsfeld ist, ginge z.B. „WHERE Month([Datum nach Monaten])=01 AND Year([Datum nach Monaten])=2008“; ist das Feld rein-numerisch oder sonstwas, geht es wieder anders.
Weiter gehts mit Datenbankhygiene: „ANZ“ ist als Feldname genauso unglücklich gewählt wie „Datum nach Monaten“, nämlich deswegen, weil Access, zugegebenermaßen dummerweise, gerade im Abfrageentwurfsmodus, nicht so richtig nach englischen und deutschen Begriffen zu trennen pflegt und ein solcher Bezeichner irgendwo, irgendwann mit einem reservierten Wort kollidieren könnte.
Schon eine ganz hübsche Sammlung, oder?
GEK