×
Показано с 1 по 10 из 10
  1. Клерк
    Регистрация
    08.09.2004
    Адрес
    Краснодарский край
    Сообщений
    3,194

    округление до большего числа в 1С 8.1

    Здравствуйте! Подскажите, пожалуйста, в 1С 8.1 можно округлить число с дробной частью до большего числа, например, 1,276 должно окргуляться до 2. В Excel это ОКРУГЛВВЕРХ, а в 1 С только Окр есть.
    Поделиться с друзьями

  2. Fosihas
    Гость
    а
    РежимОкругления.Окр15как10 (RoundMode.Round15as10)
    РежимОкругления (RoundMode)
    Окр15как10 (Round15as10)
    Использование:
    Только чтение.
    Описание:
    При округлении 1.5 будет округлено до 1.
    и
    РежимОкругления.Окр15как20 (RoundMode.Round15as20)
    РежимОкругления (RoundMode)
    Окр15как20 (Round15as20)
    Использование:
    Только чтение.
    Описание:
    При округлении 1.5 будет округлено до 2.

  3. Клерк
    Регистрация
    08.09.2004
    Адрес
    Краснодарский край
    Сообщений
    3,194
    РежимОкругления.Окр15как20 (RoundMode.Round15as20)
    РежимОкругления (RoundMode)
    Окр15как20 (Round15as20)
    Использование:
    Только чтение.
    Описание:
    При округлении 1.5 будет округлено до 2.
    1,5 округлится до 2, а 1,2 в таком случае округлится до1
    А мне надо, чтоб все, что больше 1 округлялось до 2

  4. Бухгалтер-программист Аватар для azernot
    Регистрация
    16.08.2004
    Адрес
    Москва
    Сообщений
    671
    ОкругленноеВверх = Цел(ДробноеЗначение)+1;
    С уважением
    Зернятко А.В.

  5. Клерк
    Регистрация
    01.06.2005
    Адрес
    Новочеркасск
    Сообщений
    8,186
    Цитата Сообщение от azernot Посмотреть сообщение
    ОкругленноеВверх = Цел(ДробноеЗначение)+1;
    Забавно получится в случае если Цел(ДробноеЗначение) = ДробноеЗначение

  6. Бухгалтер-программист Аватар для azernot
    Регистрация
    16.08.2004
    Адрес
    Москва
    Сообщений
    671
    Хм, ну да..

    ОкругленноеВверх = Цел(ДробноеЗначение)+?(Цел(ДробноеЗначение)=ДробноеЗначение,0,1);
    С уважением
    Зернятко А.В.

  7. Клерк
    Регистрация
    08.09.2004
    Адрес
    Краснодарский край
    Сообщений
    3,194
    Спасибо, поняла.

  8. Клерк
    Регистрация
    23.07.2007
    Сообщений
    28
    ОкругленноеВверх = Цел(ДробноеЗначение)+?(Цел(ДробноеЗначение)=Дробно еЗначение,0,1);

    Хм, внушает
    А я так делал:
    ОкругВверьхь = Цел(ДробноеЗначение+0,9)

    И было мне щастье:
    1,0 = 1 (Целое от 1,9)
    1,1 = 2 (Целое от 2,0)
    ……..
    1,9 = 2 (Целое от 2,8)

  9. Клерк
    Регистрация
    23.07.2007
    Сообщений
    28
    Я извиняюсь, но сейчас порылся в общих модулях (и БП и ЗиУП), и нашел такую функцию: ЦелМаксимальное(Сумма)
    // возвращает "количество полных и неполных рублей"
    // Параметры:
    // Сумма - число
    // Возвращаемое значение:
    // число, равное ближайшему целому "сверху"


    А если нужно подобие Excel-евской функции, с возможностью округлять не только до целых, то я тут проверил сейчас такое чудо, и вроде работает как надо:
    ОкругВверьх= Окр(ДробноеЧисло + 0.49999999999999,0);
    (Девятки нужны, чтобы округлялось по принципу, что даже 0,0000001 = 1 иначе, если прибавлять просто 0,4 то будет округляться исходя только из предыдущей цифры т.е. 0,1 =1 но 0,01 = 0)

    Если нужно до десятых округлить, то пишем:
    ОкругВверьх= Окр(ДробноеЧисло + 0.049999999999999,1);
    Ну и т.д.

  10. Клерк
    Регистрация
    08.09.2004
    Адрес
    Краснодарский край
    Сообщений
    3,194
    Огромное спасибо.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)