Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: BotschafterSarek am September 24, 2013, 06:25:41

Titel: Monatsgruppierung mit Startdatum 20.
Beitrag von: BotschafterSarek am September 24, 2013, 06:25:41
Hallo zusammen,

ich habe hier eine Abfrage, die monatsweise gruppiert ist, indem ich einen Ausdruck Monat anlege, der sich durch die Formel DatSeriell(Jahr(Tagesauswertung!Datum);Monat(Tagesauswertung!Datum);1) definiert, danach gruppiere und von den anderen Feldern jeweils den Mittelwert bilde. Das ist soweit ja ganz einfach.

Nun muß ich aber nach Monaten gruppieren, die am 20. beginnen. Also vom 20. Oktober 2011 bis zum 19. November 2012, vom 20. November 2012 bis zum 19. Dezember 2012, vom 20. Dezember 2012 bis zum 19. Januar 2013 und so weiter. Wie mache ich das am intelligentesten? Das Datum steht im Feld Datum der Abfrage Tagesauswertung, aus der auch die meisten anderen Daten kommen.


Danke für Eure Tipps,
Sarek
Titel: Re: Monatsgruppierung mit Startdatum 20.
Beitrag von: DF6GL am September 24, 2013, 08:26:39
Hallo,

probier mal solches:



DatSeriell(Jahr(Tagesauswertung!Datum-20);Monat(Tagesauswertung!Datum-20);1)
Titel: Re: Monatsgruppierung mit Startdatum 20.
Beitrag von: BotschafterSarek am September 24, 2013, 15:40:20
Zitat von: DF6GL am September 24, 2013, 08:26:39
DatSeriell(Jahr(Tagesauswertung!Datum-20);Monat(Tagesauswertung!Datum-20);1)

So geht es problemlos in Excel (natürlich nur wenn man DatSeriell durch Datum und Tagesauswertung!Datum durch den entsprechenden Zellbezug ersetzt), aber Access meldet mir dann "Datentypen in Kriterienausdruck unverträglich". In Access kann ich offenbar keine normale Zahl von einem Datum subtrahieren :(

In probiere es jetzt mal mit einer Verschachtelung mit DateAdd ...
Titel: Re: Monatsgruppierung mit Startdatum 20.
Beitrag von: DF6GL am September 24, 2013, 15:56:37
Hallo,

das geht auch in Access...

Was ist "Tagesauswertung!Datum"  eigentlich?

Ein Formular-Textfeld oder ein Tabellenfeld(Name)


Beim einem Tabellenfeld schreib:

DatSeriell(Jahr(Tagesauswertung.[Datum]-20);Monat(Tagesauswertung.[Datum]-20);1)
Titel: Re: Monatsgruppierung mit Startdatum 20.
Beitrag von: oma am September 24, 2013, 16:29:09
Hallo,

würde wohl auch gehen:

in Abfrage:   Monatsbeginn: [DeinDatumsfeld]-Tag([DeinDatumsfeld])+20

und danach gruppieren


Gruß Oma