Hej! Hoppades att jag skulle få en snilleblixt då jag släppte problemet för ett tag, men jag har tyvärr inte fått det. Hej. Tack så jättemycket Andreas! Nu har jag hunnit titta på koden igen och ändrat på den här raden till så här: Jag tror att jag nu är på väg att hitta en lösning med VBA-kod istället. Återkommer i ett nytt inlägg ifall jag skulle få problem.Ackumulerat belopp i "Microsoft Graph Chart"
Jag har genom VBA lyckats skapa ett SQL-uttryck som används som radkälla för en Microsoft Graph Chart som visar belopp per månad.
Men när jag försökte göra på liknande sätt för ackumulerat belopp, från början av året till den aktuella månaden, så blev det problem med "SELECT SUM....".
Börjar tro att jag har angripit problemet från fel håll. Att jag inte ska använda VBA och att jag ska använda mig av uttryck istället? Har nu kämpat på ett tag med det, men inte fått till det.
Det är samma ackumulerade belopp som i min förra frågas formulär. Då fick jag denna kod att använda:
Ackumulerat_belopp:
=DSumma("[Belopp]";"Omsättning";"[kontrakt_nr] = '" & [kontrakt_nr] & "' And [ÅrMånad] Between #" & DatumSerie(År([ÅrMånad]);1;1) & "# And #" & [ÅrMånad] & "#")
Antar att jag kan använda det någonstans även i diagrammet?
Jag vill alltså att diagrammet ska visa t.ex. det ackumulerade beloppet från jan - april för åren 2007, 2008, 2009 och att det är för rätt kontraktsnummer.
Så här ser det ut nu i radkällan, då diagrammet summerar och visar ackumulerat belopp för varje månad oavsett kontraktnr.
Fält: Uttryck1: (Format([ÅrMånad];"mmm"" '""åå"))
Funktion: Gruppera
Visa: Ja
Fält: SummaBelopp: [Belopp]
Tabell: OMSÄTTNING
Funktion: Summa
Visa: Ja
Fält: (År([ÅrMånad])*12+Månad([ÅrMånad])-1)
Funktion: Gruppera
Visa: Nej
Nu har jag riktigt kört fast, så jag hoppa verkligen på hjälp!
/CarinaSv: Ackumulerat belopp i "Microsoft Graph Chart"
Så här ser formulärets datakälla ut nu:
SELECT OMSÄTTNING.Kontrakt_nr, OMSÄTTNING.ÅrMånad, OMSÄTTNING.Belopp
FROM OMSÄTTNING
WHERE (((OMSÄTTNING.Kontrakt_nr) Like [Forms]![frm_Startmeny_Omsättning]![RedigeraOmsättning_kontrakt_nr]) AND ((OMSÄTTNING.ÅrMånad) Like [Forms]![frm_Startmeny_Omsättning]![RedigeraOmsättning_månad]));
Men belopp för andra kontrakt tas ändå med. Antar att det beror på att det inte finns något villkor för SummaBelopp: [Belopp] i diagrammets radkälla?
Har ni någon idé om hur man kan få det att fungera som jag vill?
Är van att programmera mot MySQL i PHP och det känns ovant att använda Access gränssnitt.
Mycket tacksam för hjälp! Sv:Ackumulerat belopp i "Microsoft Graph Chart"
Jag vet inte om det här är till någon hjälp:
SELECT OMSÄTTNING.Kontrakt_nr,
OMSÄTTNING.ÅrMånad,
OMSÄTTNING.Belopp,
(SELECT SUM(A.Belopp)
FROM OMSÄTTNING AS A
WHERE A.Kontrakt_nr = OMSÄTTNING.Kontrakt_nr AND
A.ÅrMånad >= DateSerial(Year(OMSÄTTNING.ÅrMånad),1,1) AND
A.ÅrMånad =< OMSÄTTNING.ÅrMånad) > AS Ackumelerat
FROM OMSÄTTNING
WHERE (((OMSÄTTNING.Kontrakt_nr) Like [Forms]![frm_Startmeny_Omsättning]![RedigeraOmsättning_kontrakt_nr]) AND
((OMSÄTTNING.ÅrMånad) Like [Forms]![frm_Startmeny_Omsättning]![RedigeraOmsättning_månad]));
Följande data:
Kontrakt_nr, ÅrMånad, Belopp
1,2008-12-01, 10
1,2009-01-01, 11
1,2009-02-01, 12
1,2009-03-01, 13
2,2009-01-01, 21
2,2009-02-01, 22
Ger:
Kontrakt_nr, ÅrMånad, Belopp, Ackumelerat
1,2008-12-01, 10, 10
1,2009-01-01, 11, 11
1,2009-02-01, 12, 23
1,2009-03-01, 13, 36
2,2009-01-01, 21, 21
2,2009-02-01, 22, 43
Sv: Ackumulerat belopp i "Microsoft Graph Chart"
Antar att det är meningen att det ska användas som radkälla för diagrammet?
Men då jag kopierar in din kod där, så får jag följande felmeddelande som gäller fr.o.m
OMSÄTTNING. ÅrMånad, OMSÄTTNING. Belopp och resten av koden:
"är inte ett giltigt namn. Kontrollera att det inte innehåller ogiltiga tecken eller skiljetecken och att namnet inte är för långt."
Har du några idéer om vad som gick galet? Jag ger mig för idag, orkar inte kolla igenom koden och fundera något mer ikväll.
/Carina
Sv:Ackumulerat belopp i "Microsoft Graph Chart"
A.ÅrMånad <= OMSÄTTNING.ÅrMånad) AS Ackumelerat
Då blev det inget felmeddelande, men däremot kom "Ange parametervärde"-rutan fram för:
[Forms]![frm_Startmeny_Omsättning]![RedigeraOmsättning_kontrakt_nr])
och
[Forms]![frm_Startmeny_Omsättning]![RedigeraOmsättning_månad]
Förstår inte varför eftersom de tilldelats ett värde vid val i kombinationslistor i frm_Startmeny_Omsättning?
Testar att fylla i giltiga värden i dessa två rutor, KALIX1006613 och 2009-11-01. Fick då fram ett diagram som ser skumt ut, med tre staplar. Det är en stapel för ÅrMånad som är 2009-11-01 hög. Belopp och Ackumulerat har 10 vardera i databladet, men visas som noll i deras staplar.
Y-axeln innehåller datum från 1900-01-00 till 2036-11-01.
Antar att det inte ska vara A.Kontrakt_nr och A.ÅrMånad?
Var det meningen att jag skulle lägga in koden som diagrammets radkälla, eller skulle det vara formulärets datakälla? Känner mig rätt så förvirrad nu!
Hoppas någon kan hjälpa mig! Sv: Ackumulerat belopp i "Microsoft Graph Chart"