Есть ли общий способ обработки только видимых ячеек в Excel? - PullRequest
0 голосов
/ 17 февраля 2019

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

Если у меня есть, например, формула sumif($E5:$E100; "ABC"; $F5:F100), было бы очень полезно, если бы был способ выразить, что данные диапазоны должны учитывать только видимые ячейки.Я мог бы представить, что для конструкции диапазона можно указать вид префикса, например % или like.Например, формула тогда будет выглядеть как sumif(%$E5:%$E100; "ABC"; %F5:%F100), чтобы прояснить, что в данных диапазонах должны приниматься во внимание только видимые строки.

То же самое будет, например, для sum(%A1:%A100), что будет означать, чтов диапазоне от A1 до A100 должны быть взяты только видимые ячейки для суммирования ячеек.

Суть в том, что эта конструкция может быть взята внутри любой формулы, независимо от того, что это такое.

Заранее спасибо Георг

1 Ответ

0 голосов
/ 17 февраля 2019

В общем случае для суммирования суммы по совпадению в диапазоне критериев ..... но только для видимых строк вы можете использовать эту формулу: =SUMPRODUCT((criteriarange=criteria)+0,SUBTOTAL(109,OFFSET(sumrange,ROW(sumrange)-MIN(ROW(sumrange)),0,1,1))) Первая часть (criteriarange=criteria)+0 просто проверяет критерии для каждой строки и возвращает 1 дляФункция match or 0 OFFSET возвращает «массив диапазонов», причем каждый диапазон в этом случае представляет собой одну ячейку из диапазона суммы.SUBTOTAL может обработать это и с суммой function (109) дает "сумму" (то есть значение) каждой ячейки, только когда она видна.- SUMPRODUCT затем умножает два диапазона и суммирует результат, фактически давая вам сумму видимых строк, где критерии соответствуют. Попробуйте это

=SUMPRODUCT(($E$5:$E$100="ABC")+0,SUBTOTAL(109,OFFSET($F$5:$F$100,ROW($F$5:$F$100)-MIN(ROW($F$5:$F$100)),0,1,1)))

enter image description here

...