Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA / 8 сообщений из 8, страница 1 из 1
22.05.2009, 18:58:50
    #36002852
Nevsky2006
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA
Здравствуйте всем.
Подскажите, пожалуйста аналоги функций Excel в VBA
ОКРУГЛ(число;число_разрядов) -> Round(expression [,numdecimalplaces])
ОКРУГЛВВЕРХ(число;число_разрядов) -> ?
ОКРУГЛВНИЗ(число;число_разрядов) -> ?
Я так понял аналогов нет, а как бы написать подобное?
Спасибо заранее.
...
Рейтинг: 0 / 0
22.05.2009, 19:09:48
    #36002864
Taranaga
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA
Nevsky2006,

Вниз до второго знака
? int(12.345*100)/100

Вверх до второго знака
? -int(-12.345*100)/100
...
Рейтинг: 0 / 0
22.05.2009, 21:59:51
    #36003002
?
?
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA
Код: plaintext
1.
2.
ActiveCell.FormulaR1C1 = "=CEILING(RC[-1],1)"
ActiveCell.FormulaR1C1 = "=Floor(RC[-1],1)"
...
Рейтинг: 0 / 0
23.05.2009, 02:08:09
    #36003134
VLA91MIR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA
Dim MyNumber
MyNumber = Int(99.8) ' Returns 99.
MyNumber = Fix(99.2) ' Returns 99.

MyNumber = Int(-99.8) ' Returns -100.
MyNumber = Fix(-99.8) ' Returns -99.

MyNumber = Int(-99.2) ' Returns -100.
MyNumber = Fix(-99.2) ' Returns -99.
...
Рейтинг: 0 / 0
23.05.2009, 02:22:58
    #36003139
VLA91MIR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA
Int(m * (10 ^ n)) / (10 ^ n)
Fix(m * (10 ^ n)) / (10 ^ n)
...
Рейтинг: 0 / 0
23.05.2009, 03:18:23
    #36003152
VLA91MIR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA
Dim m
Function okrv(m)
n = 3
If m = Int(m * (10 ^ n)) / (10 ^ n) Then _
okrv = Int(m * (10 ^ n)) / (10 ^ n) Else _
okrv = Int(m * (10 ^ n)) / (10 ^ n) + 1 / (10 ^ n)
End Function


Function okrn(m)
n = 3
okrn = Fix(m * (10 ^ n)) / (10 ^ n)
End Function
...
Рейтинг: 0 / 0
23.05.2009, 03:51:02
    #36003158
VLA91MIR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA
Dim m
Function okrv(m)
n = 3
If m >= 0 Then
If m = Int(m * (10 ^ n)) / (10 ^ n) Then _
okrv = Int(m * (10 ^ n)) / (10 ^ n) Else _
okrv = Int(m * (10 ^ n)) / (10 ^ n) + 1 / (10 ^ n)
Else
okrv = Int(m * (10 ^ n)) / (10 ^ n)
End If
End Function
Function okrn(m)
n = 3
okrn = Fix(m * (10 ^ n)) / (10 ^ n)
End Function
...
Рейтинг: 0 / 0
23.05.2009, 05:04:49
    #36003160
VLA91MIR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA
Dim m
Function okrv(m)
n = 3
If m >= 0 Then
If m = Int(m * (10 ^ n)) / (10 ^ n) Then okrv = Int(m * (10 ^ n)) / (10 ^ n) Else okrv = Int(m * (10 ^ n)) / (10 ^ n) + 1 / (10 ^ n)
Else
okrv = Int(m * (10 ^ n)) / (10 ^ n)
End If
End Function
Function okrn(m)
n = 3
If m >= 0 Then
If m = Int(m * (10 ^ n)) / (10 ^ n) + 1 / (10 ^ n) Then okrn = Int(m * (10 ^ n)) / (10 ^ n) + 1 / (10 ^ n) Else okrn = Int(m * (10 ^ n)) / (10 ^ n)
Else
If m = Fix(m * (10 ^ n)) / (10 ^ n) Then okrn = Fix(m * (10 ^ n)) / (10 ^ n) Else okrn = Int(m * (10 ^ n)) / (10 ^ n) + 1 / (10 ^ n)
End If
End Function
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ в VBA / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]