Afronden van een double

Status
Niet open voor verdere reacties.

Webmeester

Nieuwe gebruiker
Lid geworden
5 nov 2007
Berichten
4
Ik wil graag een Double afronden tot 2 getallen achter de comma. Op zich vrij eenvoudig met round(dblGetal,2) maar..........

Op het moment dat er achter de comma ,99 verschijnt mag ie er van mij 0,01 bij optellen. En andersom ook! (dus bij ,01 er 0,1 van af halen)

Dus:
5,99442125 wordt 6
7,34234512 wordt 7,34
6,01212341 wordt weer 6

Iemand een idee?
 

De optie Cint() doet precies hetzelfde. ('t afronden zoals in het voorbeeld)
Al laat het voorbeeld wel duidelijk zien hoe je het aanpakt.

@TS:

Code:
Private Sub Form_Load()
Dim dbl1 As Double, dbl2 As Double, dbl3 As Double

dbl1 = afronden(5.99442125)
dbl2 = afronden(7.34234512)
dbl3 = afronden(6.01212341)

MsgBox CStr(dbl1) & vbCrLf & CStr(dbl2) & vbCrLf & CStr(dbl3)
End Sub

Private Function afronden(dbl As Double) As Variant
  If CDbl((dbl - CInt(dbl) >= -0.1)) And CDbl((dbl - CInt(dbl) <= 0.1)) Then
        afronden = CInt(dbl)
  Else
       afronden = CDbl(Round(dbl, 2))
  End If
End Function

Zoek je zoiets ?
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan