Я работаю над листом Google, который генерирует месячные временные ряды на основе следующей информации:
- Дата начала (C17)
- Дата окончания (C18)
- Сумма в начале периода (C19)
- Вычеты в течение периода (D19: L19)
Моя текущая настройка выглядит следующим образом:
Мне нужны две ArrayFormulas:
- Один для заполнения вычитаемой суммы столбца (D19: L19), если дата (B21: B) находится в диапазоне дат вычета(D17: 17, D18: 18)
- Один для расчета эффективной суммы после вычета в конце каждого месяца.
Я использую ArrayFormulas, потому что я ожидаю, что обычные пользователиимейте сложное автоматическое заполнение нормальных формул после вставки особенно длинных строк сведений о вычетах.
Таблица временных рядов предназначена для генерирования путем подачи данных из другой таблицы - таблицы, в которой указаны месячная начальная сумма и сведения о вычетах. используя поля Start Дата, Дата окончания и Сумма. До сих пор я был в состоянии собрать следующие данные:
Месяцы в диапазоне:
=datedif($C$17,$C$18,"M") - named range "ScheduleMonths"
Столбец месяцев:
=ArrayFormula(edate(C17,row(B1:indirect("B"&ScheduleMonths))))
Итого за месяц:
=ARRAYFORMULA(C21:indirect("C"&ScheduleMonths+20)-
D21:indirect("D"&ScheduleMonths+20)-E21:indirect("E"&ScheduleMonths+20)-
F21:indirect("F"&ScheduleMonths+20)-G21:indirect("G"&ScheduleMonths+20)-
H21:indirect("H"&ScheduleMonths+20)-I21:indirect("I"&ScheduleMonths+20)-
J21:indirect("J"&ScheduleMonths+20)-K21:indirect("K"&ScheduleMonths+20)-
L21:indirect("L"&ScheduleMonths+20))
Это нормальная формула, которую я настроил для использования в полях таблицы:
=if(AND(C$17<=$B21,$B21<=C$18),C$19,"")
Я ожидаю, что результирующие ArrayFormulas заполнят все ячейки ежемесячного удержания с соответствующими суммами удержанийесли дата (B21: B) попадает в диапазон дат вычета (D17: 17, D18: 18). До сих пор я достиг этого только с нормальной формулой.