У меня есть массив данных, который содержит несколько нулей в конце (хотя я не хочу предполагать, что они в конце), и вычисляю статистику по ненулевым значениям. Я бы не хотел использовать формулы Ctrl-Shift-Enter (которые практически не поддерживаются) и иметь возможность использовать любую функцию статистики (например, QUARTILE) вместо перекодирования средней функции с помощью SUM ()/COUNT ().

Вот пример, чтобы прояснить ситуацию: мои данные в A1: A10 содержат (1,2,3,4,5,6,7,8,0,0). Я хочу получить квартили, как показано ниже, но динамически вычисляя «A1: A8»

=QUARTILE(A1:A8, n) // ignoring the zeros

Конечно, я мог бы добиться этого, предполагая, что нули находятся в конце, только построив первый аргумент для QUARTILE() с

"A1" & ":" & ADDRESS( x + COUNTIF(A1:A10; "<>0") )

но опять же, я хотел бы иметь возможность иметь нули внутри моего массива, а не только в конце.

Или мне придется углубиться в VBA?

1 ответ1

2

Некоторые функции могут быть заменены вариантами IF или IFS например, SUMIF , SUMIFS

например, среднее значение может быть рассчитано с использованием =SUMIF(A1:A10,"<>0")/COUNTIF(A1:A10,"<>0")
SUMIFS может использовать более 1 критерия, поэтому может подойти для более сложных запросов

Список функций, которые могут использовать критерии выбора в своих вычислениях:

  • AVERAGEIF
  • AVERAGEIFS
  • SUMIF
  • SUMIFS
  • COUNTIF

Другой подход заключается в использовании вспомогательного столбца, который имеет =IF(A1=0,"",A1) так что пробелы заменяют нули и, таким образом, не влияют на статистические функции.

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