integer är heltal. om du ska ha decimaler får du använda någon annan subtyp, till exempel double eller single.
prova därför cdbl() istället.
det ska vara bra att veta också att det spelar roll om du har komma eller decimalpunkt. det beror på vad du har för regional settings på servern om du ska ha komma eller punkt.
Tja, i så fall måste du in och titta på värdet om det innehåller någon siffra
s = rs("value1")
for i = 1 to len(s)
if isNumeric(mid(s,i,1)) then
summa = summa + cdbl(mid(s,i))
exit for
end if
next
'
s = rs("value2")
' på samma sätt
Jag tänkte mig att om du fick upp värdet "A12" från databasen så skulle man plocka ut värdet 12 och plussa på det. Och nu menar du att jag har missförstått allt eller?
Om du vill att värdet "A" tolkas som 8 och så vidare, så får du lägga in en mappningsfunktion.
function map(str)
if str = "A" then
map = 8
elseif str = "A1"
map = 5.5
...
else
map = cdbl(str)
end if
end function
...
summa = summa + map(rs("value1")
Jag får bara syntax error?
Den klagar på
function map(str)
<td>
<%
function map(str)
if str = "A" then
map = 8
elseif str = "A1"
map = 5.5
else
map = cdbl(str)
end if
end function
dim summa
summa= map(rs("Value1"))+map(rs("Value2"))+map(rs("Value3"))
%>
<%=summa%>
</td><td><%=FormatNumber(summa/222)*100%></td>
Det ska vara så förresten, att A=8, A1=5,5 och Ae=3,5
Finns några till. Det är jobbturer, så jag vill ju se antalet timmar och vad det blir i procent.
Jag har kapat lite kod som bara är onödig, men den klagar på line 281 som är markerad med blå fet stil.
<td>
<%
dim summa
[b]function map(str)[/b]
if str = "A" then
map = 8
elseif str = "A1" then
map = 5.5
else
map = cdbl(str)
end if
end function
summa = summa + map(rs("Value1"))+map(rs("Value2"))+map(rs("Value3"))
%>
<%=summa%>
</td><td><%=FormatNumber(summa/222)*100%></td>