Як визначити рядки, які не містять * жодного зі списку інших рядків


0

У мене є стовпець A і стовпець B з текстом. Я хочу скопіювати стовпець А до стовпця С та видалити рядки, які рівні або містять значення у стовпці В.

У мене є ця формула, але вона не вилучає рядки, що містять лише відповідність:

=ARRAYFORMULA(IF(ISNA(MATCH(A:A,B:B,0)),A:A,""))

Будь-яка формула / запит для цього?

знімок екрана

(Зверніть увагу , що я хочу C2бути порожнім, так як A2, sevdaa, містить sevda ( B3).)


На швидкий погляд, це "sevdaa" у колонці A і "sevda" у колонці B, тому воно все ще відображається у стовпці C.
T0t3sMcG0t3s

@ T0t3sMcG0t3s я знаю. Я не хочу копіювати "sevdaa", оскільки вона містить "sevda"
goksel

Відповіді:


1

Тип

=IF(AND(A1<>"", PRODUCT(--ISERROR(FIND(B$1:B$3,A1)))>0), A1, "")

в C1і введіть Ctrl+ Shift+ Enter. Потім перетягніть / заповніть.

  • FIND(B$1:B$3,A1)перевіряє, чи знайдене кожне слово / ім'я у клітинках B1через B3слово / ім'я у комірці A1. Це буде оцінено до цілого зміщення, якщо є збіг та #VALUE!помилка, якщо немає.
  • ISERROR(…) оцінює ІСТИНА, якщо внутрішня формула є помилкою (тобто, якщо немає відповідності), а FALSE в іншому випадку (тобто, якщо є збіг).
  • --перетворює значення TRUE 1 і FALSE 0. Таким чином , --ISERROR(FIND(B$1:B$3,A1))буде все 1s , якщо A1не містить B1, B2або B3, але буде тримати деякі 0s , якщо є якісь - або рядки в B1:B3тому , що з'являються A1.
  • І так PRODUCT(…)є 1, якщо всі числа одиниці, і 0, якщо будь-яке з них дорівнює нулю.
  • Отже, якщо A1він не порожній, але він не містить жодного з Bрядків, відображайте це слово / ім'я у стовпці C.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.