Я пытаюсь использовать следующую формулу Excel, мне нужна ячейка C4 на моем листе, чтобы вернуть значение 0, потому что A4 равно B3. Вот что я попробовал:

=IF(A4='Weekly Input Data'!B$3:B$4,0,1) и он возвращает значение 1, но так как A4 делает = B3, мне нужно, чтобы он возвращал значение 0. Что я делаю неправильно?

3 ответа3

1

Попробуйте использовать MATCH вместо этого?

=IF(ISNUMBER(MATCH(A4, 'Weekly Input Data'!B$3:B$4, 0)), 0, 1)

MATCH попытается найти соответствующее значение из вашего диапазона и, если найдет его, вернет число.


Я только что понял, что вы даже можете удалить IF:

=ISERROR(MATCH(A4, 'Weekly Input Data'!B$3:B$4, 0))*1

Если у MATCH есть совпадение, ISERROR возвращает false, то есть 0 и 0 * 1 дает 0. (Вы ожидали 0, если A4 находится в B3:B4).

Если у MATCH нет совпадений, ISERROR возвращает true, то есть 1 и 1 * 1 дает 1.


РЕДАКТИРОВАТЬ: Согласно обновлению на пустом диапазоне, вы можете использовать это:

=IF(COUNTBLANK('Weekly Input Data'!B$3:B$4)=ROWS('Weekly Input Data'!B$3:B$4),0,ISERROR(MATCH(A4,'Weekly Input Data'!B$3:B$4,0))*1)

Я использовал COUNTBLANK и ROWS чтобы сделать формулу более гибкой для различных диапазонов, не делая ее формулой массива.

1

При использовании формулы

=IF(A4='Weekly Input Data'!B$3:B$4,0,1)

Вы сравниваете ячейку A4 с диапазоном 'Weekly Input Data'!B$3:B$4 , а не с ячейкой 'Weekly Input Data'!B$3 .

У вас есть два варианта:

  1. Сравните ячейку A4 с ячейкой 'Weekly Input Data'!B$3
  2. Поиск, если ячейка A4 совпадает с любой ячейкой диапазона 'Weekly Input Data'!B$3:B$4

Для 1. формула: =IF(A4='Weekly Input Data'!B$3, 0, 1)

Для 2. формула имеет вид: =IF(ISNUMBER(MATCH(A4, 'Weekly Input Data'!B$3:B$4, 0)), 0, 1)

0

На ячейке C4:

=IF(A4=B3,0,1)

Если ваш A4 (и / или B3) находится на другом листе, то:

=IF(A4='Weekly Input Data'!B$3,0,1)

Изменить: С тех пор как вы упомянули, вам нужно сравнить ряд данных (1 ячейка с данными с несколькими ячейками)

Это то, что я нашел на этом сайте http://www.mrexcel.com/forum/excel-questions/87031-formula-compare-value-one-cell-range-5-cells.html - ответ DRJ (обновлен для соответствия Ваш запрос):

=IF(ISNA(INDEX('Weekly Input Data'!B3:B7,MATCH(A4,'Weekly Input Data'!B3:B7,0))),0,1)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .