ЕСЛИ, ИЛИ, ФУНКЦИЯ СООТВЕТСТВИЯ В EXCEL

#excel #function #if-statement #match

Вопрос:

вы, ребята, знаете ошибку из этой формулы?

 =IFERROR(IF(OR(MATCH(D3,'Sheet1'!$O$7:$O$67,1),MATCH(D3,'Sheet2'!$O$7:$O$67,1),MATCH(D3,'Sheet3'!$O$7:$O$67,1)),"YES"),"NO")  

Я проверил формулу, но результат всегда «НЕТ», когда я проверял ее вручную, результат должен быть «ДА», есть ли что-нибудь, что я пропустил?

Ответ №1:

СОВПАДЕНИЕ вернет число или ошибку. Если какое-либо из выражений в ИЛИ возвращает ошибку, то все ИЛИ возвращает ошибку, поэтому вы всегда будете получать возврат ошибки.

Вместо этого заверните каждый МАТЧ в ISNUMBER:

 =IF(OR(ISNUMBER(MATCH(D3,'Sheet1'!$O$7:$O$67,1)),ISNUMBER(MATCH(D3,'Sheet2'!$O$7:$O$67,1)),ISNUMBER(MATCH(D3,'Sheet3'!$O$7:$O$67,1))),"YES","NO")