webForumDet fria alternativet

Problem vid avrundning decimaltal & array

ASPur ASP

4 svar · 555 visningar · startad av Alamartimo

Medlem sedan okt. 2004129 inlägg
Frågan#1

Nu har jag problem med avrudning av decimaltal & array.

Databas: MySQL

Plockar fram värdet ur databasen: (fälttyp) Decimal 10,4.

Värdet kan se ut så här: 59,0001

Kör en avrundning på det med Round(rs(värdet),3)

Problemet är att den då visar bara 59

Har en array senare som ska splitta stängen vid ,

myArr1 = split(värdet,",")
del1 = myArr1(0)
del2 = myArr1(1)

Får du ett felmeddelande.

Vad kan jag göra för att lösa problemet?

Har provat med ABS och Clng etc för att försöka behålla värdet med decimal trots att det är 59,000.

Ska jag kanske göra om Array och köra den på annat sätt?
Är inte så bra på array. :(

Mvh Hannu

Medlem sedan juni 200032 969 inlägg
#2

Eftersom CLng() konverterar till heltal av subtypen long känns det inte som något vidare bra val om du vill ha decimaler.

Om jag hade varit du hade jag använt FormatNumber().

dMyVal = FormatNumber(rs(värdet),3)

Eventuellt måste du slänga på en subtypskonvertering till double med CDbl() på värdet från recordsetet, det märker du.

Medlem sedan okt. 2004129 inlägg
#3

@nders:

Avrundar FormatNumber värdet då eller tar den bara bort sista decimalen?

Som det ser ut nu så fungerar det men har inte kollat avrundningen.

Medlem sedan okt. 2004129 inlägg
#4

Det gjorde den @nders. :)

Super tack för hjälpen.

Medlem sedan juni 200032 969 inlägg
#5

Jag vet faktiskt inte. Gör det inte det är det bara att använda Round() också.

edit: OK, topp! (y)

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