Итак, у меня есть проблема, что поиск некоторых строк в ячейке по списку. Например:

лист 1:

    A                                     B     C
   ---                                   ---   ---
1 | Cash in deposit (Branch A t/t)
2 | Borrowed from Corp. A
3 | Interest payment
4 | Int.panalty pmt
5 | Prin. Pmt
6 | Salary Pmt on April
7 | Sales abroad
8 | Branch C t/t
9 | Transferred from Company AA
10| Mortgages to DD ltd
11| Sal. Pmt on May

И в ячейке B1 я ввожу формулу следующим образом:

=IF(COUNT(SEARCH({"branch","corp.","company"},A1))>0,"Precol.",IF(COUNT(SEARCH({"interest","int.","prin."},A1))>0,"lo.",IF(COUNT(SEARCH("sales",A1))>0,"Sa.",IF(COUNT(SEARCH({"sal.","Salary","wage","payroll"},A1))>0,"Se.","Others"))))

Формула слишком длинная и слишком много скобок, это не хорошо, если у меня есть длинный список для сортировки.

Итак, не могли бы вы помочь мне сократить или создать другую формулу более эффективно, чем она?

2 ответа2

0

О, я просто ищу новое решение, подобное этому: если я назову диапазон для "отрасль, корпорация, компания ... и продажи" в качестве ключевого слова; диапазон для "Precol., Lo., Se., Sa." в цепочку ключей. Моя формула будет = IFERROR(INDEX(keystring, MATCH(TRUE, ISNUMBER(SEARCH(ключевое слово, A1))), 0)), "Others") и Ctrl-shift-enter. У меня будет похожий результат.

0

Моя старая формула будет длинной, если будет много аргументов.

Наконец, я воспользовался функцией поиска, чтобы решить мой вопрос, который приведен ниже:

IFERROR(LOOKUP(2 ^ 5, SEARCH(ключевое слово, A1), KeyString), "другие")

В котором:- ключевое слово включает в себя Branch, Corp, Company ... и продажи - KeyString включает в себя Precol., Lo., Se., Sa.

Но я все еще не удовлетворен, я хочу иметь другие решения помимо них.

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