Как подсчитать последовательные одинаковые значения

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

Вот таблица, которую я создал, в ней перечислены результаты, которых «Арсенал» достиг в этом сезоне. Значения, выделенные красным, - это то, что я хотел бы получить с помощью формул.

https://dl.dropboxusercontent.com/u/92830254/test-sheet.xlsx

У меня есть 3 отдельных запроса:

1) Текущий пробег команды. Таким образом, если «Арсенал» выиграл 2 игры подряд, то рядом с каждой победой будет отображаться 2. То же самое с ничьей и проигрышем.

2) Текущие матчи, в которых команда осталась непобежденной, то есть победа или ничья. Таким образом, если бы у «Арсенала» был прогон типа WIN-DRAW-DRAW-WIN, то в следующем столбце после каждого из этих результатов появилось бы 4. Если они проиграют игру, столбец останется пустым.

3) Наконец, количество матчей, в которых забила команда, т.е. голов> = 1. Таким образом, если бы последние 3 игры «Арсенала» были 2,1,1, то после каждого значения в этом диапазоне появилось бы 3. Если они не смогли забить, то поле останется пустым.

Спасибо.

По-прежнему возникают проблемы с внедрением, обновлено 31 октября 2014 г.


person Hypernova    schedule 17.12.2013    source источник
comment
Вы говорите, что число 4 встречается 3 раза, но на самом деле оно встречается пять раз, поэтому непонятно, о чем вы спрашиваете. Ваш пример непонятен. Может быть, вы хотите подсчитать все четверки в столбце, или, может быть, вам просто нужно количество последовательных четверок в столбце. Пожалуйста, отредактируйте это, чтобы было понятнее.   -  person Lance Roberts    schedule 17.12.2013


Ответы (3)


Это сделает это. Предполагается, что ваши значения находятся в A2: A11. Обратите внимание, что диапазон в формуле простирается до A12. Это формула массива, и ее нужно вводить с помощью Ctrl - Shift - Enter. Введите его в B2 и скопируйте:

=IF(A1=A2,B1,MATCH(FALSE,$A2:$A$12=A2,0)-1)
person Doug Glancy    schedule 17.12.2013
comment
woops, мой плохой, я должен был сказать, введите B2 и скопируйте вниз. Если по-прежнему возникают ошибки, сообщите мне, в чем заключается ошибка. - person Doug Glancy; 17.12.2013
comment
Я бы задала новый вопрос с хорошим представлением о том, что вы хотите сделать. Покажите эту формулу и спросите, как ее изменить или нужно ли это делать с помощью вспомогательных столбцов, как это сделал L42 здесь. Извини, мне нужно бежать. :) - person Doug Glancy; 17.12.2013

Я сделал это в долгом подходе :)

Предполагая, что ваши данные находятся в столбце A с заголовком (это означает, что фактические данные начинаются с A2).
В B2 введите эту формулу и скопируйте туда, где ваши данные простираются:

=IF(OR(A2=A3,A1=A2),"YES","NO") 'this checks if consecutive or not

В C2 введите эту формулу и скопируйте туда, где распространяются ваши данные:

=IF(A2=A1,C1,ROW(A2)) 'this gives identity on numbers that re-occured (eg. 4 in your example)

В D2 введите эту формулу и скопируйте туда, где распространяются ваши данные:

=COUNTIFS(A:A,A2,B:B,B2,C:C,C2) 'finally, this gives you the values that you want.

Надеюсь, это вам немного поможет.
Вот скриншот:

введите описание изображения здесь

person L42    schedule 17.12.2013
comment
Да, это сработало, но есть ли способ изменить его еще больше, скажем, из вашего примера, мы добавляем новый столбец, вставляем его в A, перемещая другие. Это будет называться «Цвет». Мы будем использовать только КРАСНЫЙ или ЧЕРНЫЙ. Таким образом, новая формула будет искать пробег с состоянием Красный или Черный. - person Hypernova; 17.12.2013
comment
Да, это может быть сделано. Вы можете обратиться к этому сообщению Дуга который использует VBA. Но если вы не пользуетесь VBA, попробуйте это подход и просмотрите ответ Сиддарта. Если вы столкнетесь с какими-либо трудностями и вам может потребоваться помощь или разъяснение, вы всегда можете спросить здесь. :) - person L42; 18.12.2013
comment
Извините, я просто не могу понять, что нужно изменить, чтобы это применимо к моей проблеме. - person Hypernova; 18.12.2013

Функция, которую вы ищете, - это counttif. Это позволит вам подсчитать значения в заданном диапазоне.

Подсчитать, если ссылка

person David    schedule 17.12.2013