Try it:
Sub RoundEx(Num, Prec)
FracPart = Frac(Num) * Prec
Temp = Frac(FracPart)
FracPart = Int(FracPart)
If Temp >= 0.5 Then FracPart = FracPart +1
If Temp <= -0.5 Then FracPart = FracPart -1
Return Int(Num) + FracPart / Prec
End Sub
Sub Frac(Num)
Return Num - Int(Num)
End Sub
Prec should be
1 - X
10 - X.X
100 - X.XX
e.t.c.
RoundEx(10.5, 1) 'returns 11
RoundEx(11.5, 1) 'returns 12
RoundEx(11.4, 1) 'returns 11
RoundEx(11.6, 1) 'returns 12
RoundEx(10.5356, 100) 'returns 10.54