Реализация функции MS Excel ВСД (IRR) в 1С

16.05.17

Разработка - Универсальные функции

Клиент поставил задачу: посчитать в 1С внутреннюю ставку доходности проекта. В MS Excel это решалось просто, достаточно было вызвать функцию ВСД (или IRR в не локализованной версии). В 1С такой функции нет. После анализа решений в интернете написал свою реализацию этой задачи, всё просто: на вход подается таблица значений, которая содержит денежные потоки через равные промежутки времени. На выходе получается процентная ставка за период.

Скачать исходный код

Наименование Файл Версия Размер
Реализация функции MS Excel ВСД (IRR) в 1С:
.erf 7,71Kb
37
.erf 7,71Kb 37 Скачать

Аналог функции ВСД программы MS Excel (расчет внутренней ставки доходности) для 1С реализован в виде внешнего отчета. Отчет содержит одну экспортную функцию ВСД, расположенную в модуле отчета. Варианты использования: встроить отчет в свою конфигурацию и вызывать эту функцию или скопировать функцию и расположить в своём модуле. 

В качестве параметра функции использовать таблицу значений. Функция возвращает число, это рассчитанный процент за период.

Для демонстрации работы функции на форме расположена таблица значений. Заполнив её и нажав кнопку "Рассчитать ВСД" мы получим сообщение о значении ВСД для этих данных.

Обработка тестировалась на платформе 1С:Предприятие 8.3 (8.3.9.2170), конфигурация УПП ред. 1.3.

Описание оригинала функции от Microsoft: функция возвращает внутреннюю ставку доходности для ряда потоков денежных средств, представленных их численными значениями. В отличие от аннуитета, денежные суммы в пределах этих потоков могут колебаться. Однако обязательным условием является регулярность поступлений (например, ежемесячно или ежегодно). Внутренняя ставка доходности — это процентная ставка, принимаемая для инвестиции, состоящей из платежей (отрицательные величины) и доходов (положительные величины), которые имеют место в следующие друг за другом и одинаковые по продолжительности периоды.

ВСД IRR

См. также

Вставляем картинку из буфера обмена (платформа 1С 8.3.24)

Универсальные функции Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Задача: вставить картинку из буфера обмена на форму средствами платформы 1С.

1 стартмани

18.03.2024    2948    2    John_d    11    

56

GUID в 1С 8.3 - как с ними быть

Универсальные функции Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пришлось помучиться с GUID-ами немного, решил поделиться опытом, мало ли кому пригодится.

12.02.2024    5263    atdonya    22    

52

Переоткрытие внешних обработок

Универсальные функции Платформа 1С v8.3 Бесплатно (free)

На заключительных этапах, когда идет отладка или доработка интерфейса, необходимо много раз переоткрыть внешний объект. Вот один из способов автоматизации этого.

30.11.2023    4162    ke.92@mail.ru    16    

62

Валидация JSON через XDTO (включая массивы)

WEB-интеграция Универсальные функции Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

При работе с интеграциями рано или поздно придется столкнуться с получением JSON файлов. И, конечно же, жизнь заставит проверять файлы перед тем, как записывать данные в БД.

28.08.2023    9602    YA_418728146    6    

143

Печать непроведенных документов для УТ, КА, ERP. Настройка печати по пользователям, документам и печатным формам

Пакетная печать Печатные формы Адаптация типовых решений Универсальные функции Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Абонемент ($m)

Расширение для программ 1С:Управление торговлей, 1С:Комплексная автоматизация, 1С:ERP, которое позволяет распечатывать печатные формы для непроведенных документов. Можно настроить, каким пользователям, какие конкретные формы документов разрешено печатать без проведения документа.

2 стартмани

22.08.2023    2300    28    progmaster    8    

3

Расширение: Быстрые отборы через буфер [Alt+C] Копировать список, [Alt+V] Вставить список, [Ctrl+C] Копировать из файлов

Инструментарий разработчика Универсальные функции Платформа 1С v8.3 Конфигурации 1cv8 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Абонемент ($m)

Копирует в буфер значения из списков, из ячеек отчетов, таблиц, настроек списков, других отборов и вставляет в выбранную настройку отбора. Работает с Объект не найден. Работает как в одной так и между разными базами 1С. Использует комбинации [Alt+C] Копировать список, [Alt+V] Вставить список. Также для копирования данных используется стандартная [Ctrl+C] (например из открытого xls, mxl, doc и т.п. файла скопировать список наименований)

1 стартмани

13.10.2022    16443    144    sapervodichka    112    

130

Система контроля ведения учета [БСП]

Универсальные функции Механизмы типовых конфигураций БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данном материале рассмотрим типовой алгоритм подсистемы контроля учета БСП в конфигурациях на примерах.

18.07.2022    7394    quazare    8    

110
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Negator 11.01.19 16:07 Сейчас в теме
Ну вообще то ВСД можно рассчитывать не только когда все периоды между платежами идеально равны между собой. Если они не равны, то за базовый период принимается наиболее часто встречающийся в графике временной интервал между денежными потоками. Сложность расчета при этом существенно возрастает...
2. igrik72 15.06.20 14:55 Сейчас в теме
Добрый день. Приобрел вашу обработку. Сравнил с результатом работы функции ВСД, реализованной в MS EXCEL. Результаты отличаются. :( Ваша функция работает неверно?
3. Scop 61 15.06.20 15:47 Сейчас в теме
Игорь, публиковал 3 года назад, разрабатывал ещё раньше, за это время нареканий не было. Какие входные данные используете?
4. igrik72 15.06.20 16:14 Сейчас в теме
Разобрался. В моих примерах ВСД было от 0 до 2 %. И поэтому я не сразу понял, что нужно округлять до целых.
Обработка работает корректно. Автору спасибо.
5. PavelTihonov 08.09.21 18:37 Сейчас в теме
Спасибо за обработку!
6. Scop 61 08.09.21 18:40 Сейчас в теме
Оставьте свое сообщение