Avatar billede dantona Nybegynder
28. maj 2000 - 20:32 Der er 3 kommentarer

Expression i Query

Hej

Jeg vil gerne tage summen af 3 felter i en query f.eks. [felt1], [felt2] og [felt3]. derefter tage den værdi væk der er mindst af de 3 værdier. Hvordan gør man det.

MVH
Dan
Avatar billede dantona Nybegynder
28. maj 2000 - 20:35 #1
Dvs, i mit eget selvlærte excel sprog:
(val(felt1]+val(felt2)+val(felt3))-Min(felt1;felt2;felt3)

MVH
Dan
Avatar billede philiph Nybegynder
29. maj 2000 - 00:54 #2
Det kan gøres direkte, men det bliver ret gnidret...:

Val([felt1])+Val([felt2])+Val([felt3])-IIf(Val([felt3])<IIf(Val([felt1])<Val([felt2]);Val([felt1]);Val([felt2]));Val([felt3]);IIf(Val([felt1])<Val([felt2]);Val([felt1]);Val([felt2])))

Da dette er ret ulæseligt, er det måske en bedre løsning at lave en VB funktion der laver beregningen:

Public Function GetMin(ParamArray n() As Variant) As Variant
  Dim i As Integer
  Dim MinN As Variant
 
  MinN = n(LBound(n))
  For i = LBound(n) + 1 To UBound(n)
    If n(i) < MinN Then
      MinN = n(i)
    End If
  Next i
  GetMin = MinN
End Function

Og så bruger udtrykket:
Val([felt1])+Val([felt2])+Val([felt3])-GetMin(Val([felt1]);Val([felt2]);Val([felt3]))

FYI: Val kan fjernes på alle numeriske felter.

Philip
Avatar billede dantona Nybegynder
11. august 2000 - 22:45 #3
Har fået en løsning tilsendt
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester