miércoles, 12 de mayo de 2021

VBA Access. Redondeo de números decimales con el método medio redondeo. Alternativa a la función Round (bankers round)

 Private Function Redondeo(ByVal Numero As Variant, ByVal Decimales As Integer) As Double

    'Aplica método medio redondeo (half round up) Redondeo(23.345,2) = 23.35.

    'Es diferente que el de la funcion Round de access (bankers rounding) Round(23.345,2) = 23.34

    

    Dim dbl As Double

    dbl = CDec(Nz(Numero))

    dbl = CDec(dbl * 10 ^ Decimales)

    Redondeo = Fix(dbl + 0.5 * Sgn(Numero)) / 10 ^ Decimales

End Function

No hay comentarios:

Publicar un comentario

VBA Access. Redondeo de números decimales con el método medio redondeo. Alternativa a la función Round (bankers round)

 Private Function Redondeo(ByVal Numero As Variant, ByVal Decimales As Integer) As Double     'Aplica método medio redondeo (half round ...