¿me recordais el nombre de alguna función que me redondee un nº a los
decimales que yo quiera?


RESPUESTAS E HILO COMPLETO
==========================

Juan, M.Afan de Ribera

yo siempre uso esta. No recuerdo quien la envio al grupo, pero igualmente se
lo agradezco.

Public Function Redondear(dblnToR As Double,  Optional intCntDec As Integer)
As Double
Dim dblPot As Double
Dim dblF As Double

    If dblnToR < 0 Then dblF = -0.5 Else: dblF = 0.5
    dblPot = 10 ^ intCntDec
    Redondear = Fix(dblnToR * dblPot * (1 + 1E-16) + dblF) / dblPot

End Function

--

Dice Búho:

Oye...he pillado este hilo 'al vuelo'
¿Y qué pasa con Round?


--

Responde Juan:

Que qué pasa con Round? Pues según recuerdo de hilos de hace bastante
tiempo, se ve que redondea al estilo banco americano (EEUU). No recuerdo muy
bien como iba la cosa, pero yo se que al final cogi una de las funciones que
se adjuntaron para redondear como nosotros ( es decir, => 0,5 redondea al
número superior, <0,5 redondea en el número).

Sobre lo de redondear al estilo de los bancos americanos, creo que lo
explicó Oscar Me, aunque Victor Delgadillo seguro que nos puede aclarar
algo. Yo desde luego, sólo os confundiré más, seguro.

---
Sigue Búho

Pues si es cierto lo que dices, bastará llamar a la funcion que has expuesto
con su nombre real, es decir Round.
Me explico
Public Function Round(dblnToR As Double,  Optional intCntDec As Integer) As
Double
Dim dblPot As Double
Dim dblF As Double

    If dblnToR < 0 Then dblF = -0.5 Else: dblF = 0.5
    dblPot = 10 ^ intCntDec
    Round = Fix(dblnToR * dblPot * (1 + 1E-16) + dblF) / dblPot

End Function

Así mejor pues Access machaca 'su' Round y pone esta.
Por ejemplo

MsgBox Round(12.446, 2)
MsgBox VBA.Round(12.446, 2)
La primera nos daría el resultado de 'nuestra' round y la segunda el Round
de VBA de Access.


--


OTRA FUNCION DE REDONDEO DE MCPEGASUS

Por aquí tienes una,

Function mc_dblRedondear(dblNúmero As Double, intDecimales As Integer) As Double
'Última actualización: 21/10/2001
'Para Redondear, eliminar, indicar cantidad de decimales a una cifra.

'La sintaxis del Procedimiento consta de estos argumentos:
'Parte                  Descripción
'---------------------------------------------------------------------------
'dblNúmero:         Opcional.   Número a redondear.
'intDecimales:      Opcional.   Cantidad de decimales a devolver.

'Como utilizar esta Función.
'   Nombre del evento:      Origen del control.
'   Instrucción a incluir:  =mc_dblRedondear(1232.56;1)

    mc_dblRedondear = Sgn(dblNúmero) * Fix(Abs(dblNúmero) * (10 ^ (intDecimales)) + 0.5) / (10 ^ (intDecimales))

End Function


--


    Source: geocities.com/es/ensolva/Descargas/Documentos

               ( geocities.com/es/ensolva/Descargas)                   ( geocities.com/es/ensolva)                   ( geocities.com/es)