Abfrage Letzter Monat

Hallo liebe Mitstreiter,

Ich konstruiere gerade einen Bericht der zum einen mit der folgenden SQL Anweisung die Summe und die Anzahl aus einer Abfrage entnimmt.
Nun möchte ich in einem zweiten Feld auf dem Bericht zwar ebenfallst Summe und Anzahl aus der gleichen Datentabelle erscheinen lassen, aber nur die aus dem Vormonat also ergänzt um …WHERE Monat= Heute()-1
oder so.

Kann mir jemand sagen an welcher Stelle ich was einfügen muss ?

Hier die SQL-Anweisung:
SELECT DISTINCTROW Sum([3 Unternehmensbereich PK 1 Abfrage].[Summe von Stornobetrag]) AS [Summe von Summe von Stornobetrag], Sum([3 Unternehmensbereich PK 1 Abfrage].[Anzahl von 3 Unternehmensbereich PK 1]) AS [Summe von Anzahl von 3 Unternehmensbereich PK 1]
FROM [3 Unternehmensbereich PK 1 Abfrage];

Hallo,

erstell eine normale Auswahlabfrage (ohne Kriterium, ohne Sortierungen und ohne Gruppierungen, oder benutz gleich die Tabelle für die DAtenherkunft des Berichtes.
Im Bericht (Berichts-Fenster „Sortieren/Gruppieren“) gruppierst Du zunächst nach dem Monat/Jahr, den/das Du aus einem entspr. Datumsfeld berechen kannst, evtl. mit einer Sortierung nach einem weiteren Feld.

Die Berechnungen erledigst Du dann im Gruppenfuß.

Um den Bericht mit irgendwelchen Kriterien datensatzanzahl-mäßig einzuschränken, sollte der Bericht aus einem Formular heraus mit Übergabe der entspr. Kriterien an die Docmd.Openreport-Methode geöffnet werden.

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!

Hallo Franz,

so schnell kapiere ich das nicht.

erstell eine normale Auswahlabfrage (ohne Kriterium, ohne
Sortierungen und ohne Gruppierungen, oder benutz gleich die
Tabelle für die DAtenherkunft des Berichtes.

hab ich gemacht!

Im Bericht (Berichts-Fenster „Sortieren/Gruppieren“)

wo ist das Berichtsfenster ? ganz genau ? oder meinst Du das Eigenschaftenfenster ?

gruppierst Du zunächst nach dem Monat/Jahr, den/das Du aus
einem entspr. Datumsfeld berechen kannst, evtl. mit einer
Sortierung nach einem weiteren Feld.

Und jetzt kommt’s - jetzt versteh ich gar nichts mehr !

Die Berechnungen erledigst Du dann im Gruppenfuß.

Um den Bericht mit irgendwelchen Kriterien
datensatzanzahl-mäßig einzuschränken, sollte der Bericht aus
einem Formular heraus mit Übergabe der entspr. Kriterien an
die Docmd.Openreport-Methode geöffnet werden.

hirgnzzzzzz… !!!

Gruß Christian

Hallo

so schnell kapiere ich das nicht.

habe Dir ja jetzt etwas Zeit gelassen :wink:

wo ist das Berichtsfenster ? ganz genau ? oder meinst Du das
Eigenschaftenfenster ?

nein, das Fenster „Sortieren/Gruppieren“, das man in der Menüleitse unter Ansicht aufmachen kann (oder im Kontextmenü des Berichtes) im Berichtsentwurf.

gruppierst Du zunächst nach dem Monat/Jahr, den/das Du aus
einem entspr. Datumsfeld berechen kannst, evtl. mit einer
Sortierung nach einem weiteren Feld.

Und jetzt kommt’s - jetzt versteh ich gar nichts mehr !

Wenn das Datumsfeld „Buchungsdatum“ heißt, dann trag im o. g. Fenster unter „Feld/Ausdruck“ etwa dieses ein:

„“ & Jahr([Buchungsdatum]) & Monat([Buchungsdatum])

und setz „Gruppenkopf“ und „Gruppenfuß“ auf ja. Dadurch werden im Bericht die Gruppenbereiche erzeugt.

Die Berechnungen erledigst Du dann im Gruppenfuß.

siehe dazu: www.donkarl.com/?FAQ5.16

Um den Bericht mit irgendwelchen Kriterien
datensatzanzahl-mäßig einzuschränken, sollte der Bericht aus
einem Formular heraus mit Übergabe der entspr. Kriterien an
die Docmd.Openreport-Methode geöffnet werden.

hirgnzzzzzz… !!!

z. B. als Ereignisprozedur „Beim Klicken“ einer Schaltfläche

Sub btnBericht_Click()
Docmd.OpenReport „rpt_DeinBericht“,acPreview,„Year([Buchungdatum]) =2009“

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!

OK die Fenster und das alles hab ich gefunden.

aber geht das nicht auch einfacher ?

Gruß Christian

Hallo,

naja, was heißt „einfacher“…

Es gibt andere Wege/Möglichkeiten, aber ob das dann einfacher ist…

z. B. die Verwendung der DSum()-Funktion (siehe dazu in der VBA-Hilfe)

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!