Ссылаясь на последующие ячейки в CountIf

После обширного и безрезультатного поиска в Google я надеюсь, что кто-то может мне помочь: я хочу подсчитать количество вхождений в столбце ячеек, где ячейка больше, чем ячейка, следующая за ней, т.е.:

_A
1 2
2 1
3 2
4 1

Возвращает число 2, если A1>A2 и A3>A4.

Я также хочу сослаться на смещения от текущей проверяемой ячейки в виде чего-то вроде (с намерениями в фигурных скобках):

=countif(A:A, [Current cell being checked] ">" [Cell below the current cell being checked])

Кажется, я не могу придумать эти типы этого. использованная литература. Я знаю, что мог бы написать быстрый макрос для этого, но мне интересно узнать об этом методе ссылки.


person JakeyJake    schedule 21.01.2014    source источник


Ответы (1)


Вы не можете сравнить один диапазон с другим с помощью COUNTIF

Вы можете использовать SUMPRODUCT следующим образом:

=SUMPRODUCT((A1:A3>A2:A4)+0)

или в более общем смысле

=SUMPRODUCT((Range>OFFSET(Range,1,0))+0)

person barry houdini    schedule 21.01.2014
comment
Спасибо за помощь! Универсальная версия вроде работает. Есть ли способ сослаться на активную ячейку функции проверки диапазона в формуле ячейки? - person JakeyJake; 22.01.2014
comment
Не уверен, что вы имеете в виду. Эта формула будет ссылаться на текущую ячейку вертикального диапазона =INDEX(range,ROW()-MIN(ROW(Range))+1), но это зависит от того, что вы хотите сделать - вы можете получить циклическую ссылку - person barry houdini; 22.01.2014
comment
Я надеялся на версию ActiveCell в формуле, присутствующую в VBA, или на вызов this.cell в стиле JAVA, который позволяет использовать относительные сдвиги, такие как смещение или vlookup, для получения значений выражения, и который переоценивается при сдвигах Active Cell. Хотя простое чтение и знание стилей функций передачи диапазонов не делает это возможным... - person JakeyJake; 22.01.2014