У меня есть 3 колонки, в некоторых из которых есть страны, в которых так

I                    J                    K
--------------       -----------------    ----------------
Denmark          
Finland
London               United Kingdom
123 street           London               United Kingdom

Проблема в том, что я хочу добавить страны в одну ячейку, а не в несколько ячеек

L
------------
Denmark
Finland
United Kingdom
United Kingdom

Я пытался

=IF(OR(AND(J1=" United Kingdom","United Kingdom",""),AND(K1=" United Kingdom","United Kingdom",""),AND(L1=" United Kingdom","United Kingdom",""),AND(I1=" United Kingdom","United Kingdom","")),"Correct","Wrong")

а также

=IF(OR(J1=" United Kingdom","United Kingdom",""),OR(K1=" United Kingdom","United Kingdom",""),OR(L1=" United Kingdom","United Kingdom",""),OR(I1=" United Kingdom","United Kingdom","")),"Correct","Wrong")

но это дает мне ошибку

Кто-нибудь знает, почему это не работает или лучший способ сделать это?

3 ответа3

1

Попробуйте это (в ячейке L1)

=IF($K1<>"", $K1, IF($J1<>"", $J1, IF($I1<>"", $I1, "Not Provided")))

Не проверял это, но должно работать.

редактировать

основываясь на приведенном вами примере, я предположил, что столбец K будет пустым или указывается страна. Если он может содержать пробелы, попробуйте

=IF(TRIM($K1)<>"", $K1, IF(TRIM($J1)<>"", $J1, IF(TRIM($I1)<>"", $I1, "Not Provided")))

вместо.

0

Я на самом деле решил проблему, используя следующую формулу

=IF(OR(OR(TRIM(J1)="United Kingdom"),OR(TRIM(K1)="United Kingdom"),OR(TRIM(L1)="United Kingdom"),OR(TRIM(I1)="United Kingdom")),"Correct","Wrong")
0

Альтернатива вашему решению:

Создайте список своих семи стран и создайте динамический именованный диапазон этого списка. Допустим, вы назвали это CountryList . Вы можете сохранить этот список на скрытом листе, если это будет необходимо. Использование динамического именованного диапазона просто означает, что вы можете добавить новую страну в список без необходимости изменять какие-либо формулы

Теперь в вашем последнем столбце введите формулу

используйте формулу со всеми опубликованными вами OR() и TRIM() , но вместо TRIM(J1)="United Kingdom" вместо этого используйте ISERROR(MATCH(J1, CountryList, 0 )) чтобы проверить, соответствует ли ячейка чему-либо в вашем Range и вместо "Correct" используйте INDEX(CountryList, MATCH(J1, CountryList)) чтобы извлечь имя из списка

Итак, все вместе:

=IF(OR(OR(ISERROR(MATCH(J1, CountryList, 0 ))),OR(ISERROR(MATCH(K1, CountryList, 0 ))),OR(ISERROR(MATCH(L1, CountryList, 0 ))),OR(ISERROR(MATCH(I1, CountryList, 0 )))),INDEX(CountryList, MATCH(J1, CountryList)),"Wrong")

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