17. maj 2002 - 13:52Der er
26 kommentarer og 1 løsning
Udregn Sum i Rapporten
Jeg har en rapport, hvor jeg har en nogle felter, hvor nogle af disse felter indeholder en pris udregning (Pris2). I detalje sektionen har jeg pris2, men jeg vil nu gerne have en sum af alle Pris2 fra detaljesektionen.
I Sidehovedet har jeg oprettet en tekstbox (totalPris) som skal indholde den totale sum. Jeg har prøvet at skrive =Sum([Pris2]) i Tekstboxen, men der står "#fejl" i tekstboxen når jeg køre rapporten.
Det skal lige siges at Pris2 er en tekstbox, hvis værdi er udregnet i VBA under funktionen Detaljesektion_Format.
Hvordan får jeg totalPris til at indholde total sum ?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
=Sum([Pris2]) kan IKKE anbrings i sidehoved eller sidefod. Du er nødt til at anbringe den i rapporthoved/fod eller i en brugerdefineret gruppehoved/fod
I givet fald, vil jeg anbefale dig at flytte udregningen til forespørgslen ved simpelthen at lave en ny kolonne som f.eks. ser således ud: Pris2: Pris1*Antal*moms
Du kan gemme udregningerne i en funktion i et modul (du kan f.eks. kalde funktionen for GetPris2) Derved kan du lave din nye kolonne i forespørgslen således: Pris2: GetPris2()
Okay, jeg prøver at lave min udregning i Forespørgslen.
Men jeg har et problem....jeg skal finde antalet af dage der mellem to dato´er. Den ene dato ligger i forespørgslen, og den anden skal man selv indtaste. Jeg har pøvet med :antalDage: DateDiff("d", [Dato1], slutDato), men så får jeg en ugyldig syntaks.
Hvis din VBA-funktion virker, så vil jeg hellere foreslå dig at gøre, som jeg skrev tidligere.
Åbn et nyt modul og opret denne funktion:
Public Function Pris3 (StandardIndex as single, KontraktIndex as single, SlutDato as Date, SM13008) as Single If Not KontraktIndex = 0 Then
If slutDato > CDate(Dato1) And slutDato <> #12/31/9999# Then antalDage = DateDiff("d", CDate(Dato1), slutDato) Pris3 = Format((Val(SM13008) * 12 * StandardIndex / KontraktIndex) * Val(antalDage) / 365, "###0.00")
Else Pris3 = Format(Val(SM13008) * 12 * StandardIndex / KontraktIndex, "###0.00") End If Else Pris3 = Format(Val(SM13008) * 12, "###0.00") End If end function
I din forespørgsel laver du så denne nye kolonne, som f.eks. ser således ud: Pris: Pris3(StandardIndex; [SM11051]; [SM11016]; [SM13008])
NB: Jeg ved ikke hvad du kalder StandardIndex i tabellen, så den skal lige tilpasses!
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.