Я сталкивался с этим решением для объединения формулы суммирования и промежуточного итога, но я не понимаю этого ..

Объединение SUMIF() и SUBTOTAL() для динамического промежуточного итога

Может ли кто-нибудь предложить объяснение того, как этот набор функций работает вместе, чтобы его могли понять другие неопытные пользователи (такие как я)? Это решение, очевидно, решает вопрос, но его очень сложно адаптировать к другому набору данных без некоторого понимания. (Я бы предпочел не публиковать свой собственный конкретный вопрос, потому что, если бы я это сделал, следующий человек с этим запросом будет иметь ту же проблему!)

Спасибо!

1 ответ1

0
=SUMPRODUCT(SUBTOTAL(109,OFFSET(AW5,ROW(AW5:AW552)-ROW(AW5),,1)),--(AV5:AV552=AV558))

Sumproduct - умножает один массив на другой и складывает их вместе.

Subtotal - дает вам промежуточный итог конкретной операции в диапазоне (ах) - вот аргументы. 109 = сумма

Offset - берет ссылку и использует смещение для ссылки на ячейку, которая смещена от нее.

row - дает номер строки ссылки

Обозначение -- существу заставляет [true] и [false] возвращаться как [1] и [0] для массива. Когда вы оперируете на true или false, они становятся числовыми, поэтому здесь вы оперируете, а затем меняете знак. Вы могли бы вместо *1


Итак, если я читаю это правильно:

  • Row-Row возвращает массив чисел, которые смещены от AW5 на высоту 1
  • Проверьте AV5:AV552 на соответствие AV558, в виде массива 0 и 1
  • Суммируйте первый массив и умножьте его на второй массив.

Это помогает?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .