2015-12-31 8 views
0

Не уверен, правильно ли сформулировал вопрос ... но у меня есть электронная таблица, которая импортирует данные через «дату транзакции», а в первый день может быть 15 транзакций , день 2 может быть 30 и т.д.Подсчет количества вхождений значения динамически

Теперь у меня уже есть формула, которая рассчитывает, сколько завозят каждый день

=SUMPRODUCT((MONTH('Further Evidence'!$A$2:$A$5000)=MONTH(DATEVALUE(Configuration!H2&" 1")))*('Further Evidence'!$A$2:$A$5000<>"")) 

, который показывает, сколько прибыли в этом конкретном месяце, что мне нужно сейчас самое лучшее, что было в этом месяце (и, если возможно, в тот день это было).

Вместо того, чтобы перечислить 365 дней в году и делать счет в каждой ячейке рядом с ними, существует ли интуитивный способ подсчета значений, существующих в списке?

Это будет просто для одного из вас, но я не могу вполне понять его или что Google :)

редактировать -

=MAX(FREQUENCY('New Appeals'!A2:A5000,MONTH('New Appeals'!A2:A5000)))

Это работает для всего списка даты, но как я могу заставить его проверять месяцы конкретно или точно определить конкретный день?

+1

Возможно, значительно уменьшенный пример набора данных (например, 10 строк) вместе с ожидаемым результатом поможет прояснить ваш вопрос. –

+0

Похоже, это возможно, если вы используете подсчет PivotTable и сортировку. Вы пытались создать сводную таблицу? – daneshjai

ответ

2

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

Я использовал диапазон выборки строк 36 до 48. Я предполагается, что дата в колонке I и что операции в колонке J

=MAX(IF(TEXT($I$36:$I$48, "mmm")="jan", $J$36:$J$48, "")) 

(чтобы ввести формулу массива вы должны нажать Ctrl + Shift + Enter, когда вы в клетке)

Это ограничивает MAX функцию месяца января.

Затем вы можете найти день, связанный с этим максимальным значением, используя другую формулу массива, которая представляет собой комбинацию первого MATCH, затем INDEX. Сначала MATCH ищет максимальное значение в пределах диапазона ячеек, связанных с данным месяцем, а затем возвращает эту позицию. Эта позиция затем используется в INDEX возвращающего дату

=INDEX($I$36:$I$48, MATCH(K34, IF(TEXT($I$36:$I$48, "mmm")="jan", $J$36:$J$48, ""))) 

Пожалуйста, обратите внимание, что если у вас есть два дня в течение одного месяца с тем же максимальным, то это будет просто вернуть первый один

Надеется, что это помогает

Смежные вопросы