ویژوال بیسیک کلاسیک تابع گرد کردن به نزدیکترین عدد صحیح داره، Round، و تابع گرد کردن به پایین هم داره، Int و Fix، ولی تابع گرد کردن به بالا نداره که خودمون میسازیم :
Private Function Ceil(ByVal v As Single) As Single
Ceil = IIf(Fix(v) = v, v, Fix(v) + 1)
End Function
حالا چون 0.25 رو مبنای گرد کردن قرار می دهید و نه 1.0 رو، قبل از گرد کردن به 4 ضرب اش می کنیم و بعد گرد کردن بر 4 تقسیم اش می کنیم :
Private Function Ceil(ByVal v As Single) As Single
v = v * 4
Ceil = IIf(Fix(v) = v, v, Fix(v) + 1)
Ceil = Ceil / 4
End Function
و اینطوری ازش استفاده می کنیم :
Dim n As Single, m As Single
m = 87.75 / 10
n = Ceil(m)
MsgBox n
m = 82.4 / 10
n = Ceil(m)
MsgBox n