Страницы: 1
RSS
Подсчет количества ячеек при достижении заданной суммы
 
Доброго времени суток!
Имеется таблица с платежами.
Нужно подсчитать, за сколько месяцев набегает => 50000 рублей с даты, указанной в столбце entry_data.
Например:
строка 2:
дата выдачи - 08.07.2021
платежи начались с декабря 2021, т.е. через 5 месяцев, но нужной суммы не набралось - ставим 0.
строка 7:
дата выдачи - 01.11.2021
платежи начались с декабря 2021, т.е. ровно через 1 месяц
47084,74 + 2271,77 + 3437,89 - итого 3 месяца
строка 8:
дата выдачи - 18.01.21
платежи начались с июня 2022, т.е. через 17 месяцев и в июле 2022 нужная сумма набралась - потребовалось 18 месяцев
строка 12:
дата выдачи 24.06.2021
платежи начались с июля 2021, т.е. через месяц, в августе пусто, в октябре 2021 нужная сумма набралась
1866 + пусто + 28316,48 + 79897,8
Платежей было три, но с момента выдачи до набора нужной суммы прошло 4 месяца (пустой месяц считаем тоже).

Хочется верить, что более-менее объяснил понятно.
Буду признателен за помощь, если такая возможна...  
 
Сергей Петрухин, я не понимаю, что из Вашего исходного файла должно получиться. Вы показали что есть, но не показали, что должно получиться.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Массивная
=IFERROR(MATCH(1=1;MMULT(-(TRANSPOSE(COLUMN(C2:W2))>=COLUMN(C2:W2));TRANSPOSE(-C2:W2))>=50000;)-MATCH("?*";C2:W2&"";)+1;0)
По вопросам из тем форума, личку не читаю.
 
БМВ,
Могу ошибаться, но по-моему ТС хотел что-то вроде этого:
Код
=IFNA((YEAR(INDEX($C$1:$W$1;MATCH(1=1;MMULT(-(TRANSPOSE(COLUMN(C2:W2))>=COLUMN(C2:W2));TRANSPOSE(-C2:W2))>=50000;)))-YEAR(B2))*12+MONTH(INDEX($C$1:$W$1;MATCH(1=1;MMULT(-(TRANSPOSE(COLUMN(C2:W2))>=COLUMN(C2:W2));TRANSPOSE(-C2:W2))>=50000;)))-MONTH(B2);)


Код
=IFNA((YEAR(INDEX($C$1:$W$1;MATCH(1=1;SUBTOTAL(9;OFFSET($C2;;;;COLUMN($C2:$W2)-COLUMN($C2)))>=50000;)))-YEAR(B2))*12+(MONTH(INDEX($C$1:$W$1;MATCH(1=1;SUBTOTAL(9;OFFSET($C2;;;;COLUMN($C2:$W2)-COLUMN($C2)))>=50000;)))-MONTH(B2)-1);)
 
memo, Возможно, тогда минимум изменений при условии что все месяца отражены.
=IFERROR(MATCH(1=1;MMULT(-(TRANSPOSE(COLUMN(C2:W2))>=COLUMN(C2:W2));TRANSPOSE(-C2:W2))>=50000;)-MATCH(B2;$C$1:$W$1);0)
Если не все, то тоже не страшно из первой части берем номер столбца и получаем месяц когда достигли 50000, вычитаем чуть обработанную дату поставки в месяцах - все.
=IFERROR(DATEDIF(EOMONTH(B2;-1)+1;INDEX($C$1:$W$1;MATCH(1=1;MMULT(-(TRANSPOSE(COLUMN(C2:W2))>=COLUMN(C2:W2));TRANSPOSE(-C2:W2))>=50000;));"M");0)
Изменено: БМВ - 14.09.2022 00:39:53
По вопросам из тем форума, личку не читаю.
 
Спасибо большое за помощь. Думал, это невозможно посчитать.
Вроде, то что нужно.
Попытаюсь в логике запросов разобраться...
 
Ещё раз хочу сказать спасибо!
Век живи, век учись...
Страницы: 1
Наверх