Страницы: 1
RSS
Округление, кратно 50 в большую сторону, как указать чтобы округление проходило в большую сторону
 
Доброго времени суток. В коде есть округление кратно 50, но помимо этого нужно округлять еще и в большую сторону, например число 184 округляется до 200, а уже число 162 округляется до 150, а нужно что бы округление проходило всегда в большую сторону.                  
Код
Sub okrugl() 
s = 162 ' s может оказаться любым от 340 и до 1500 
S = round ( s / 50, 0) * 50
msgbox (s)
end sub
 
Можно так:
Код
Sub okrugl()
    s = 162 ' s может оказаться любым от 340 и до 1500
    s = Application.Ceiling(s / 50, 1) * 50
    MsgBox (s)
End Sub
Чем шире угол зрения, тем он тупее.
 
Наверно, можно и без экзотических функций, примерно так
Код
MsgBox int(((s+49)\50)*50)
 
Апострофф, спасибо за интересное решение. :)

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
MO_ORDA, я же вам в предыдущей теме ответил :)
Ну да ладно, можно и так:
Код
s = Application.RoundUp(s / 50, 0) * 50
Страницы: 1
Читают тему
Наверх