2015-03-13 3 views
1

Я пытаюсь написать формулу для условного правила форматирования.Найти все перечисленные предметы в другом списке

Правило должно запускаться, если какой-либо из элементов в списке не существует в другом списке.

Следующее правило аналогично, но будет работать только для отдельных значений, например, если ячейка содержит U18A,B,C условие будет срабатывать, если клетка V18 содержит ничего, кроме A, B или C.

=IF(LOWER(LEFT(U18,LEN(V18)+1))=LOWER(V18)&",",FALSE,IF(LOWER(RIGHT(U18,LEN(V18)+1))=","&LOWER(V18),FALSE,IF(IFERROR(FIND(","&LOWER(V18)&",",LOWER(U18)),0)>0,FALSE,TRUE))) 

мне нужна формула, которая будет возвращать TRUE если любой из разделенных запятыми значений в V18 не встречаются в запятую в U18.

Следующая все должны вернуться FALSE:

U18    V18 
A,B,C    A,B 
A,B,C    A,C 
A,B,C    B,C 
A,B,C    A 
A,B,C    B 

Следующая должна возвращать TRUE

U18    V18 
A,B,C    X 
A,B,C    A,X 
A,B,C    A,X,B,C 
A     B 

Существует также формула listed here, которая выглядит как почти делает то, что мне нужно, но через несколько строк, к сожалению, я не смог ее адаптировать.

Я собираюсь продолжать искать, и я отправлю свои результаты, если я доберусь туда, но если кто-нибудь может помочь, я был бы очень благодарен!

+0

Я бы создал список A B C X (отдельные ячейки). – pnuts

+0

Невозможно в этой ситуации, к сожалению. – CompanyDroneFromSector7G

ответ

1
=OR(SUMPRODUCT(N(1-ISNUMBER(SEARCH(","&TRIM(MID(SUBSTITUTE(V18,",",REPT(" ",LEN(V18))),LEN(V18)*(ROW(INDIRECT("1:"&1+LEN(V18)-LEN(SUBSTITUTE(V18,",",""))))-1)+1,LEN(V18)))&",",","&U18&","))))) 

** Измененная ROW часть так, чтобы быть совместимым как правило CF.

+0

И это объясняет, почему я создал список! Не будет работать напрямую в качестве правила CF-формулы (которое может объяснить -1), но так как будет делать это косвенно (вспомогательный столбец), достаточно для моего +1. – pnuts

+0

Отлично! Спасибо. Я не знаком с некоторыми из этих функций, поэтому я займу время, чтобы справиться с ними. – CompanyDroneFromSector7G

+2

@pnuts Хорошая точка, и спасибо. Я забыл, что это было бы недопустимо в CF. Исправьте часть ROW в моем сообщении так, чтобы она была. К сожалению, это означает более волатильность. –

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