29. oktober 2002 - 11:29Der er
18 kommentarer og 2 løsninger
Null eller 0 i en query
Jeg har følgende problem: Jeg har en form for pointsystem, hvor man dels kan tildele nogle brugere points, bruge points og se hvor mange der er tilbage. Mit "Remaining"-felt i queryen er derfor baseret på "Granted" - "Vested". Men hvis der kun er Granted og endnu ikke Vested, er både Vested og Remaining blanke. Dette giver problemer når jeg hiver data ind i en pivottabel, hvor jeg vil summere hvor mange point alle brugere har, samt hvor meget der er brugt over en given periode og sidst, hvor mange point der er tilbage.
Jeg har først en qryGranting og en qryVested, men qryVested indeholder ikke data for den pågældende bruger, hvis der ikke er brugt nogle point - derfor bliver den blank.
Summasummarum: Hvorledes sætter jeg Vested=0, hvis der ikke er en værdi, således at regnestykket Granted-Vested enten er lig med Granted eller differencen mellem ovenstående - og dermed IKKE blank (dette kan Excel nemlig ikke summere)
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.
Jeg skal nok bede om en nærmere beskrivelse af begge løsningsforslag? I den query jeg bruger til Pivot i Excel har jeg naturligvis BrugerID, ..., ..., ..., qryGranted.Granting, qryVested.Vested (som til tider er blank - skal være 0), Remaining: [Granted]-[Vested] (blank hvis Vested er blank - skal være = Granted, hvis Vested=blank/0 ellers lig differencen.
Men hvordan gør jeg det? Kan det gøres i query-designet?
Desuden kan jeg nu se at den kun udvælger de poster, hvor Vested er blank? Det skyldes vel at jeg har sat Nz([Vested];0) ind som Criteria, men det skal jo være en form for If-sætning istedet! Den skal jo også vise de poster, hvor der er en værdi i Vested!!
Men Excel2000 brokker sig over at 'Nz' er undefined, når jeg vil importere fra en Access97-DB
Kan jeg "definere" Nz et sted? Jeg retter i DBen i Access2000, men konverterer tilbage til 97, da jeg skal køre basen fra en VB-applikation, der åbenbart ikke kan li' 2000? Men jeg kan ikke se hvorfor Nz ikke kan bruges i Excel2000?
iif virker kun de steder hvor Vested er blank a la: Prøv at lav en ny kolonne: Vested2: Nz([Vested];0) //Virker! Prøv at lav en ny kolonne: Vested3: iif([Vested];0) //Virker kun hvor Vested er blank
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.