MS Excel: COUNTIFS не работает, когда ячейка критерия пуста - PullRequest
0 голосов
/ 28 апреля 2020

Я был бы очень признателен за помощь в решении моей проблемы. Я пытался прочитать об этом, но ничего не нашел работ.

Я пытаюсь извлечь некоторые данные из другой электронной таблицы на основе нескольких критериев / введено в ячейки B4: B6 /.

  • B4 - имя клиента
  • B5 - с даты
  • B6 - до даты

Я хочу иметь возможность извлекать данные только на основе одной ячейки или любая их комбинация. / B4 и B5, B4 и B6, B5 и B6, B4 и B5 & B6 /

Я пытался использовать следующую формулу:

COUNTIFS(JOBS!$C$1:$C$10000,$B$4,JOBS!$L$1:$L$10000,">="&$B$5,JOBS!$L$1:$L$10000,"<="&$B$6)

Формула работает нормально, если все ячейки / B4: B6 / заполнены, но возвращает #NUM!, если она пуста.

Я пытался:

COUNTIF(JOBS!$C$1:$C$10000,$B$4)+COUNTIF(JOBS!$L$1:$L$10000,">="&$B$5)+COUNTIF(JOBS!$L$1:$L$10000,"<="&$B$6)

Формула работает нормально, если заполнена только одна ячейка / B4: B6 /, но данные перекрываются, если подано 2 или более.

Ответы [ 2 ]

1 голос
/ 28 апреля 2020

Используйте подстановочные знаки, когда пусто:

=COUNTIFS(JOBS!$C$1:$C$10000,IF($B$4="","*",$B$4),JOBS!$L$1:$L$10000,">="&IF($B$5="",0,$B$5),JOBS!$L$1:$L$10000,"<="&IF($B$6="",99999,$B$6))
0 голосов
/ 29 апреля 2020

На самом деле формула, которую я использую, выглядит очень странно. Положения критериев и диапазона, по-видимому, поменялись.

Исходная формула выглядит следующим образом:

COUNTIFS($B$4,JOBS!$C$1:$C$10000,$B$5,<="&JOBS!$L$1:$L$10000,$B$6,">="&JOBS!$L$1:$L$10000)

И она работает нормально, кроме проблемы I упоминается в названии.

Благодаря идее, которую дал мне Скотт, я переписал свою формулу, и теперь она выглядит следующим образом: COUNTIFS($B$4,IF($B$4="","",JOBS!$C$1:$C$10000),$B$5,IF($B$5="","","<="&JOBS!$L$1:$L$10000),$B$6,IF($B$6="","",">="&JOBS!$L$1:$L$10000))

Хотя я не уверен, правильно ли это как формула должна быть написана, она прекрасно работает, и теперь моя проблема решена.

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