webForumDet fria alternativet

Lite If sats problem

4 svar · 251 visningar · startad av Asa

AsaMedlem sedan dec. 20011 860 inlägg
#1

Har följande ifsats som inte vill skriva ut rätt. Formatet på totvikt är ex 2,4 (float(14,2))

    
    strVikt = Replace(totVikt,",",".")

    If strVikt <= 1 Then
      strViktKR = "86"
    ElseIf strVikt > 1 and strVikt <= 5 Then
      strViktKR = "108"
    ElseIf strVikt > 5 and strVikt <= 10 Then
      strViktKR = "140"
    ElseIf strVikt > 10 and strVikt <= 15 Then
      strViktKR = "169"
    ElseIf strVikt > 15 and strVikt <= 20 Then
      strViktKR = "209"
    ElseIf strVikt > 20 and strVikt <= 30 Then
      strViktKR = "226"
    ElseIf strVikt > 30 and strVikt <= 40 Then
      strViktKR = "254"
    ElseIf strVikt > 40 and strVikt <= 60 Then
      strViktKR = "300"
    End If

Vad gör jag för fel?

emissionMedlem sedan dec. 19996 721 inlägg
#2

Du jämför äpple och päron, eller mer specifikt: strängar och tal.

strVikt = Replace(totVikt,",",".")
dblVikt=cdbl(strVikt)
    If dblVikt <= 1 Then
      strViktKR = "86"
    ElseIf dblVikt > 1 and dblVikt <= 5 Then
      strViktKR = "108"
    ElseIf dblVikt > 5 and dblVikt <= 10 Then
      strViktKR = "140"
    ElseIf dblVikt > 10 and dblVikt <= 15 Then
      strViktKR = "169"
    ElseIf dblVikt > 15 and dblVikt <= 20 Then
      strViktKR = "209"
    ElseIf dblVikt > 20 and dblVikt <= 30 Then
      strViktKR = "226"
    ElseIf dblVikt > 30 and dblVikt <= 40 Then
      strViktKR = "254"
    ElseIf dblVikt > 40 and dblVikt <= 60 Then
      strViktKR = "300"
    End If
AsaMedlem sedan dec. 20011 860 inlägg
#3

Detta verkar ej fungera:

<%
totVikt = "5,3"

strVikt = Replace(totVikt,",",".")
dblVikt=cdbl(strVikt)
    If dblVikt <= 1 Then
      strViktKR = "86"
    ElseIf dblVikt > 1 and dblVikt <= 5 Then
      strViktKR = "108"
    ElseIf dblVikt > 5 and dblVikt <= 10 Then
      strViktKR = "140"
    ElseIf dblVikt > 10 and dblVikt <= 15 Then
      strViktKR = "169"
    ElseIf dblVikt > 15 and dblVikt <= 20 Then
      strViktKR = "209"
    ElseIf dblVikt > 20 and dblVikt <= 30 Then
      strViktKR = "226"
    ElseIf dblVikt > 30 and dblVikt <= 40 Then
      strViktKR = "254"
    ElseIf dblVikt > 40 and dblVikt <= 60 Then
      strViktKR = "300"
    End If

Response.Write "Vikt: " & totVikt & "<br>"
Response.Write "Frakt: " & strViktKR
%>

Den skriver ut 300 kr

@ndersMedlem sedan juni 200032 969 inlägg
#4

Då är det väl kommatecken som gäller som decimaltecken i din installation.

AsaMedlem sedan dec. 20011 860 inlägg
#5

Då skall jag testa med det!

128 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)