2016-05-20 3 views
1

У меня есть таблица вроде этого:CountIfs с несколькими критериями?

Date Paid Days Late Date Paid Days Late Date Paid Days Late Date Paid Days Late Date Paid Days Late Date Paid Days Late 
     Utilities  Admin  Utilities  Admin  Utilities  Admin 
    Company January January January January February February February February March March March March 
    Wayne Enterprises 2/15/2016 5 10-Feb 0 3/11/2016 1   4/15/2016 5 4/25/2016 15 
    Stark Industries 2/12/2016 3 2/8/2016 0 3/19/2016 10 3/8/2016 0 4/15/2016 5 4/1/2016 0 

(я предлагаю, хотя, глядя на screenshot, чтобы увидеть, как он выкладывается, как приклеить в здесь не очень красиво, любые советы Here's a link к этому на Google? Электронные таблицы).

Как можно, в N4, создать формулу, которая будет подсчитывать количество месяцев, что имеет поздний отчет (определенный как «Дни позднего» более 0). Очевидно, я могу это сделать:

=COUNTIFS(B1:M1,"Days Late",B4:M4,">0"), который возвращает 4.

Для Wayne Enterprises в марте утилит и администратор были оплачены с опозданием. Однако это должно считаться только месяцем. Как я могу каким-то образом добавить в свой CountIfs() оператор, похожий на «если два значения в том же месяце больше, чем 0, обрабатывать как один месяц»?

Я пытался также делать что-то вроде:

=COUNTIFS(B1:M1,"Days Late",B4:M4,">0")/COUNTIFS(B1:M1,"Days Late",B4:M4,">0")+1

Но это не совсем делать трюк либо. Спасибо за любые идеи. (Конечно, если CountIfs() не самый лучший способ, я открыт для любых других формул! У меня есть подозрительное подозрение SumProduct() может быть альтернативой) Я бы предпочел решение формулы над VBA, но если это абсолютно необходимо, мы можем возможно, сделать UDF.

Edit: я мог бы создать еще один вспомогательный столбец, который сравнивает Utilities за один месяц в и Администратор, если один или оба поздно, положить 1, то просто Countif(), что столбец имеет 1 в нем ... но я бы скорее не создавайте столбцы, если я могу помочь, так как я буду делать это в течение 12 месяцев.

+0

Вы, вероятно, нужно вставлять инструкции в свой Countif, но я нахожусь на своем iPad и не имею возможности для создания примера. – dinotom

+0

Чувак, я чувствую себя ленивым, но я хочу помочь.не могли бы вы поместить это в лист Google, который я могу скопировать и вставить? –

+1

Попробуйте использовать это .... COUNTIFS (критерии_range1, критерии1, [критерии_range2, criteria2] ...) для такого количества проверок, сколько вам нужно. Это из этого урока ... https: //www.ablebits.com/office-addins-blog/2014/07/10/excel-countifs-multiple-criteria/ – dinotom

ответ

1

Используйте этот массив формула:

=SUM(IF(($B4:$M4>0)*($B$1:$M$1="Days Late"),1/COUNTIFS($B$3:$M$3,$B$3:$M$3,$B4:$M4,">0",$B$1:$M$1,"Days Late"))) 

Будучи формула массива оно должно быть подтверждено с Ctrl - Сдвиг - Enter при выходе из режима редактирования. Если все сделано правильно, положите {} вокруг формулы.

enter image description here

В соответствии с вашими новыми данными используйте:

=SUM(IF(($B5:$BI5>0)*($B$1:$BI$1="Days past 10th of Following Month"),1/COUNTIFS($B$3:$BI$3,$B$3:$BI$3,$B5:$BI5,">0",$B$1:$BI$1,"Days past 10th of Following Month"))) 

Хелпер ряд месяцев в строке 4 не требуется.


EDIT # 2

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

=SUM(IF(($B5:$BI5<>"")*($B5:$BI5>0)*($B$1:$BI$1=$AS$1),1/COUNTIFS($B$3:$BI$3,$B$3:$BI$3,$B5:$BI5,">0",$B$1:$BI$1,$AS$1))) 
+0

Хмм, я получаю ошибку '# DIV/0' ... Используя оценщика, похоже, что возникает ошибка в конце 'CountIfs (...)' в конце. Могла бы быть эта часть, 'COUNTIFS ($ B $ 3: $ M $ 3, $ B $ 3: $ M $ 3, ...'? – BruceWayne

+1

не уверен, Это то, что должна исключить часть SUM (IF()). Она работает для меня, вы пытались проверить данные теста? –

+0

Я должен c onfess, тестовые данные были упрощены. На самом деле это немного больше данных. (Я думал, что это будет работать, просто расширяя диапазоны, но, очевидно, не). Я собираюсь отредактировать Лист Google, чтобы лучше отражать то, что у меня есть. Извините Скотта за обман: P (дай мне сказать 5 минут, чтобы обновить этот SS). – BruceWayne

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