Формула массива не работает в Excel - PullRequest
1 голос
/ 12 августа 2011

У меня есть следующая таблица в Excel (пустые пробелы):

    A  B  C  D
1   1
2   3
3   4
4  -2
5   4
6   9
7   8
8
9
10

Я хотел бы вернуть минимум столбца A из A1 в A1000000, используя функцию QUARTILE, исключая при этом все отрицательные значения. Причина, по которой я хочу получить значение от A1 до A1000000, а не от A1 до A7, заключается в том, что я хочу обновить таблицу (добавив новые строки, начиная с A8), и формула также автоматически обновляется. Причина, по которой я хочу использовать функцию QUARTILE, а не MIN, заключается в том, что я буду расширять ее для вычисления других статистических данных, таких как 1-й и 3-й квартиль.

Эта функция работает правильно и возвращает 1 (нажатие Ctrl + Shift + Enter):

QUARTILE(IF(A1:A7 > -1, A1:A7), 0)

Однако, когда я попробовал следующее, он вернул 0, когда он все еще должен возвращать 1 (нажатие ctrl + shift + enter):

QUARTILE(IF(A1:A1000000 > -1, A1:A1000000), 0)

Я также попробовал следующее, и он вернул 0 (нажав Ctrl + Shift + Enter):

QUARTILE(IF(AND(NOT(ISBLANK(A1:A1000000)), A1:A1000000 > -1), A1:A1000000), 0)

У кого-нибудь есть решение моей проблемы?

Ответы [ 2 ]

2 голосов
/ 12 августа 2011

Создайте динамический именованный диапазон, называемый, например, rng, определяемый как =OFFSET($A$1,0,0,COUNT($A1:$A10000),1)

Затем измените формулу массива так, чтобы она ссылалась на rng через =QUARTILE(IF(rng >-1,rng), 0)

1 голос
/ 12 августа 2011

На самом деле то, что у вас работает. Попробуйте сделать:

=QUARTILE(IF(A:A > 0,A:A ),0)

Причина, по которой вы возвращаете 0, заключается в том, что пустая ячейка считается имеющей значение 0 при выполнении этой формулы. Например, удалите одно из значений в диапазоне A1: A7, и ваша исходная формула вернет 0. Кроме того, я бы запустил формулу для всего столбца A, если это возможно (для удобства чтения и т. Д.)

Или вам нужно вернуть «0», если этот номер есть в списке?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...