01. maj 2006 - 08:14Der er
21 kommentarer og 1 løsning
Sammentælling med blanke felter
Jeg har lavet en forespørgsel med 5 felter som skal sammentælles til ny felt. Der er altid et beløb i det første felt, de andre kan være blanke. Problemet er at hvis de øvrige fleter er blanke bliver tallet fra det 1. felt ikke skrevet i det sidste. Kan der gøre noget ved det???
Hvis problemet er du få en blank værdi ud så prøv denne nz returnere enten tallet i feltX og hvis feltX er tomt returnere den en anden værdi som her er sat til 0:
som eagleeye siger, så ser forespørgslen sådan ud:
SELECT (nz(felt1,0)+nz(felt2,0)+nz(felt3,0)+nz(felt4,0)+nz(felt5,0)) AS Nyfelt FROM Tabel1;
Du retter navnene til og så indsætter koden i SQL-visningen af forespørgslen, så kan du gå i designvisning og tilføje ekstra felter til din forespørgsel!~)
Synes godt om
Slettet bruger
01. maj 2006 - 09:04#7
eagleeye>jeg var selv kommet til at bruge ; i stedet for ,
Jeg har prøvet forslagene som er rettet til sådan her: Salgspris: SELECT(nz(ny grundpris,0)+nz(a/c tilslutningsafgif,0)) AS salgspris from grunde; men får følgende: Syntaksen til underforespørgslen i dette udtryk er forkert. kontroller syntaksen, og omslut underforespørgslen med paranteser, 2.
Jeg jar prøvet at kopiere eageeye's sætning imd i forespørgslen så den kommer til at se sådan ud: Salgspris: SELECT (nz([ny grundpris],0)+nz([a/c tilslutningsafgift],0)) AS salgspris from grunde; Jeg får samme fejl som ovenfor og SELECT er markeret med sort.
Jeg ikke rigtig om det er mig der ikke lige har forstået det. Nu har jeg prøvet mugs' forslag som ser så ud. Salgspris: SELECT (grunde.([ny grundpris], grunde.([a/c tilslutningsafgift],(Nz([ny grundpris],0)+Nz([a/c tilslutningsafgift],0)) AS salgspris from grunde; Foran select har sat feltets navn og som udtryk1 har salgspris. Er det korretkt?
Det er samme fejl og jeg kører i en forespørgsel som er oprettet fra tabeller.
SELECT (Nz([felt1],0)+Nz([felt2],0)) AS Udtryk1 FROM Tabel1;
Du skriver Salgspris: SELECT .... Hvis salgspris er et felt i tabellen kan du ikke gøre det sådan. Du bør ikke gemme en beregning i tabellen, hvis beregningen kan foretages i forespørgslen. Hvis du vil gemme resultatet i tabellen, skal du i VBA sætte feltet Salgspris = beregningen i stil med dette:
Eller prøv denne i en forespørgsel SELECT (grunde.([ny grundpris], grunde.([a/c tilslutningsafgift],(Nz([ny grundpris],0)+Nz([a/c tilslutningsafgift],0)) AS Udtryk1 from grunde;
Nu kan jeg få beløbet frem, men så er der et nyt problem når jeg fletter til word og jeg sætter feltet ind så kommer beløbet ikke med over. er der så en forklaring på det???
Synes godt om
Ny brugerNybegynder
Din løsning...
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.