Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2017, 21:09   #1
8bplol
 
Регистрация: 17.09.2012
Сообщений: 4
По умолчанию Разбиение суммы платежа по месяцам в зависимости от даты и процента оплаты

Здравствуйте!

Прошу помощи в следующей задаче.
В столбцах K и L находятся даты оплаты аванса и расчета, в столбцах I и J - проценты аванса и расчета, в столбце Е сумма сделки.
Необходимо любыми средствами (встроенными в Excel формулами и функциями или средствами макросов) добиться разбиения суммы из столбца Е по столбцам аванса и расчета в части таблицы с месяцами, начиная со столбца M по столбец AG, а также в столбец AI в зависимости от дат, указанных в столбцах K и L.

В приложении показан конечный желаемый результат. Используется Excel 2010.
Вложения
Тип файла: zip График оплат.zip (10.1 Кб, 7 просмотров)

Последний раз редактировалось 8bplol; 18.03.2017 в 21:32.
8bplol вне форума Ответить с цитированием
Старый 18.03.2017, 22:02   #2
AlexM12
Форумчанин
 
Аватар для AlexM12
 
Регистрация: 29.08.2012
Сообщений: 209
По умолчанию

Четыре формулы
Код:
=ЕСЛИ(K5<M$3;E5*I5;"")
=ЕСЛИ(ТЕКСТ($K5;"МГГГ")=ТЕКСТ(N$3;"МГГГ");$E5*$I5;"")
=ЕСЛИ(ТЕКСТ($L5;"МГГГ")=ТЕКСТ(N$3;"МГГГ");$E5*$J5;"")
=ЕСЛИ(L5>=AI$3;E5*J5;"")
Первая и последняя протягиваются вниз.
Вторая и третья выделяются вместе и тянуться вправо, а затем вниз.
Вложения
Тип файла: xlsx График оплат_01.xlsx (12.6 Кб, 8 просмотров)
Алексей М.
AlexM12 вне форума Ответить с цитированием
Старый 18.03.2017, 22:03   #3
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

в М5 формула
=СУММПРОИЗВ(RC5*RC9:RC10*(RC11:RC12 <R3C))

в N5 формула
=СУММПРОИЗВ(RC5*RC9:RC10*(ТЕКСТ(RC1 1:RC12;"ММ!ГГ")=ТЕКСТ(ИНДЕКС(R3;СТО ЛБЕЦ()-ОСТАТ(СТОЛБЕЦ();2));"ММ!ГГ"))*(R4C1 1:R4C12=R4C))

М5 тянете за уголок вниз
N5 за уголок вниз, потом отмечаете ячейки колонки N и за уголок тянете вправо, до декабря.
Вложения
Тип файла: xlsx График оплат.xlsx (13.2 Кб, 11 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 18.03.2017, 22:47   #4
8bplol
 
Регистрация: 17.09.2012
Сообщений: 4
По умолчанию

Большое спасибо! Оба варианта решают поставленную задачу.

Однако способ IgorGO более универсален, так как позволяет учитывать такие варианты, как когда и аванс (К), и расчет (L) меньше даты в М3 или больше даты в AI3 (чего в примере не было, но позже оказалось необходимым). При этом если в таблицу добавить нечетное число новых столбцов, то этот вариант перестает работать, если добавить четное число столбцов, то все нормально работает.

Вариант AlexM12 считает верно только когда аванс (К) меньше даты в МЗ, или только когда расчет (L) больше или равен дате в AI3 (строго по приведенному мной примеру). Добавление столбцов в таблицу не влияет на расчеты.

Но, повторюсь, в рамках приложенной мной таблицы оба варианта позволяют решить задачу.

Последний раз редактировалось 8bplol; 19.03.2017 в 13:18. Причина: Добавление в пример реальных данных.
8bplol вне форума Ответить с цитированием
Старый 19.03.2017, 16:37   #5
AlexM12
Форумчанин
 
Аватар для AlexM12
 
Регистрация: 29.08.2012
Сообщений: 209
По умолчанию

8bplol, в ячейке K6 дата больше чем в М3, а в L6 меньше даты в AI3 и расчет в этой строке правильный.
Покажите пример неправильной работы формул в файле.
Алексей М.
AlexM12 вне форума Ответить с цитированием
Старый 19.03.2017, 18:20   #6
8bplol
 
Регистрация: 17.09.2012
Сообщений: 4
По умолчанию

AlexM12, в приведенном мной файле расчет Вашей формулы правильный. Изначально я описал задачу не совсем точно.
С датой в ячейке МЗ должна сравниваться дата как из столбца K так и из столбца L. Если даты в них меньше, чем в МЗ, то в М5 результат должен суммироваться, так как и аванс и расчет оплачиваются до 01.03.2017. Соответственно с датой в AI3 должна сравниваться дата не только из L, но и из K, так как оба платежа могут произойти после 01.01.2018.
В приведенном мной файле таких условий нет, но они, как оказалось, не исключены.
8bplol вне форума Ответить с цитированием
Старый 19.03.2017, 19:22   #7
AlexM12
Форумчанин
 
Аватар для AlexM12
 
Регистрация: 29.08.2012
Сообщений: 209
По умолчанию

поправил формулу для столбца М и AI
Код:
=ЕСЛИ(И(K5<M$3;L5<M$3);E5;ЕСЛИ(K5<M$3;E5*I5;""))
=ЕСЛИ(И(K5>=AI$3;L5>=AI$3);E5;ЕСЛИ(L5>=AI$3;E5*J5;""))
Добавил условия для проверки работы формул.
Вложения
Тип файла: xlsx График оплат_02.xlsx (12.8 Кб, 8 просмотров)
Алексей М.
AlexM12 вне форума Ответить с цитированием
Старый 19.03.2017, 20:01   #8
8bplol
 
Регистрация: 17.09.2012
Сообщений: 4
По умолчанию

AlexM12, спасибо. Теперь всё работает как надо.
8bplol вне форума Ответить с цитированием
Старый 19.03.2017, 20:39   #9
AlexM12
Форумчанин
 
Аватар для AlexM12
 
Регистрация: 29.08.2012
Сообщений: 209
По умолчанию

Вариант формул покороче
Код:
=ЕСЛИ(K5<M$3;E5*I5^(L5>=M$3);"")
=ЕСЛИ(L5>=AI$3;E5*J5^(K5<AI$3);"")
Вложения
Тип файла: xlsx График оплат_03.xlsx (12.6 Кб, 10 просмотров)
Алексей М.
AlexM12 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определение оплаты в зависимости от веса ShameOn Microsoft Office Excel 7 09.12.2015 00:08
Округление в зависимости от даты Chapchurova Microsoft Office Excel 2 29.11.2012 15:40
нужно вычислить строку с одинаковыми значениями суммы платежа Nick31 Microsoft Office Excel 5 13.04.2012 17:37
Вычисление даты в зависимости от суммы sanantoni Microsoft Office Excel 2 17.09.2009 16:42
Вычисленя в зависимости от даты Belokuraya Microsoft Office Excel 6 14.08.2009 16:04