Excel: порівняння рядків у двох комірках на наявність збігів (без урахування регістру або точних)

  • Поділитися Цим
Michael Brown

У навчальному посібнику показано, як порівнювати текстові рядки в Excel на відповідність без урахування регістру і точну відповідність. Ви дізнаєтеся ряд формул для порівняння двох комірок за значеннями, довжиною рядка або кількістю входжень певного символу, а також як порівнювати кілька комірок.

При використанні Excel для аналізу даних, точність є найбільш важливою проблемою. Неправильна інформація призводить до пропущених термінів, неправильної оцінки тенденцій, неправильних рішень і втрачених доходів.

Хоча формули Excel завжди абсолютно вірні, їх результати можуть бути помилковими через те, що в систему потрапили недостовірні дані. У цьому випадку єдиним засобом є перевірка даних на точність. Порівняти дві комірки вручну не складає труднощів, але виявити відмінності між сотнями і тисячами текстових рядків практично неможливо.

Цей посібник навчить вас, як автоматизувати виснажливу і схильну до помилок задачу порівняння комірок і які формули краще використовувати в кожному конкретному випадку.

    Як порівняти дві комірки в Excel

    Існує два різних способи порівняння рядків в Excel залежно від того, чи потрібно порівнювати рядки з урахуванням регістру або без урахування регістру.

    Нечутлива до регістру формула для порівняння 2 комірок

    Щоб порівняти дві комірки в Excel, ігноруючи регістр, використовуйте просту формулу на зразок цієї:

    =A1=B1

    Де A1 і B1 - клітинки, які ви порівнюєте. Результатом формули є логічні значення TRUE і FALSE.

    Якщо ви хочете виводити власні тексти на збіги та розбіжності, вбудуйте вищенаведений оператор в логічний тест функції IF. Наприклад:

    =IF(A1=B1, "Дорівнює", "Не дорівнює")

    Як ви бачите на скріншоті нижче, обидві формули однаково добре порівнюють текстові рядки, дати і числа:

    Формула для порівняння рядків в Excel з урахуванням регістру

    У деяких ситуаціях може бути важливо не тільки порівняти текстові значення двох комірок, але і порівняти регістр символів. Порівняння тексту з урахуванням регістру можна виконати за допомогою функції Excel ТОЧНО:

    ТОЧНО (текст1, текст2)

    Де текст1 і текст2 це дві клітинки, які ви порівнюєте.

    Якщо припустити, що ваші рядки знаходяться в комірках A2 і B2, то формула виглядає наступним чином:

    =EXACT(A2, B2)

    В результаті ви отримаєте TRUE, якщо текстові рядки збігаються точно, включаючи регістр кожного символу, і FALSE в іншому випадку.

    Якщо ви хочете, щоб функція ТОЧНО видавала інші результати, вставте її у формулу ЯКЩО і введіть власний текст для value_if_true і value_if_false аргументи:

    =IF(EXACT(A2 ,B2), "Точно дорівнює", "Не дорівнює")

    На наступному скріншоті показано результати порівняння рядків з урахуванням регістру в Excel:

    Як порівняти кілька комірок в Excel

    Для порівняння більш ніж 2 клітинок підряд використовуйте формули, розглянуті в наведених вище прикладах, в поєднанні з оператором AND. Більш детальна інформація наведена нижче.

    Нечутлива до регістру формула для порівняння більше 2 комірок

    Залежно від того, як ви хочете відобразити результати, використовуйте одну з наступних формул:

    =AND(A2=B2, A2=C2)

    або

    =IF(AND(A2=B2, A2=C2), "Дорівнює", "Не дорівнює")

    Формула І повертає ІСТИНА, якщо всі комірки містять однакові значення, і ЛОЖЬ, якщо будь-яке значення відрізняється. Формула ЯКЩО виводить мітки, які ви вводите в неї, " Дорівнює " і " Не дорівнює " в цьому прикладі.

    Як показано на скріншоті нижче, формула чудово працює з будь-якими типами даних - текстом, датами та числовими значеннями:

    Формула для порівняння тексту в декількох комірках з урахуванням регістру

    Щоб порівняти кілька рядків між собою, щоб побачити, чи точно вони збігаються, використовуйте наступні формули:

    =AND(EXACT(A2,B2), EXACT(A2, C2))

    Або

    =IF(AND(EXACT(A2,B2), EXACT(A2,C2)), "Точно рівні", "Не рівні")

    Як і в попередньому прикладі, перша формула видає значення ІСТИНА і БРЕХНЯ, а друга відображає ваші власні тексти для збігів і відмінностей:

    Порівняння діапазону комірок зі зразком комірки

    Наступні приклади показують, як можна перевірити, що всі клітинки в заданому діапазоні містять той самий текст, що і в комірці-зразку.

    Формула для порівняння комірок зі зразком тексту без урахування регістру

    Якщо регістр символів не має особливого значення, ви можете використовувати наступну формулу для порівняння комірок зі зразком:

    ROWS( діапазон )*COLUMNS( діапазон )=COUNTIF( діапазон , комірка для зразків )

    У логічному тесті функції ЕСЛИ ви порівнюєте два числа:

    • Загальна кількість комірок у вказаному діапазоні (кількість рядків помножена на кількість стовпців), а також
    • Кількість комірок, що містять таке ж значення, як і в комірці-зразку (повертається функцією СЧЕТЕСЛИ).

    Якщо припустити, що текст зразка знаходиться в кодуванні C2, а рядки для порівняння знаходяться в діапазоні A2:B6, то формула виглядає наступним чином:

    =ROWS(A2:B6)*COLUMNS(A2:B6)=COUNTIF(A2:B6,C2)

    Щоб зробити результати більш зручними для користувача, тобто вивести щось на кшталт "Всі збігаються" і "Не всі збігаються" замість TRUE і FALSE, використовуйте функцію IF, як ми це робили в попередніх прикладах:

    =IF(ROWS(A2:B6)*COLUMNS(A2:B6)=COUNTIF(A2:B6,C2), "Всі співпадають", "Не всі співпадають")

    Як видно з наведеного вище скріншоту, формула відмінно справляється з діапазоном текстових рядків, але її також можна використовувати для порівняння чисел і дат.

    Формула для порівняння рядків зі зразком тексту з урахуванням регістру

    Якщо регістр символів має значення, ви можете порівняти рядки з текстом-зразком, використовуючи наступні формули масиву.

    IF(ROWS( діапазон )*COLUMNS( діапазон )=SUM(--EXACT( sample_cell , діапазон )), " text_if_match ", " text_if_not match ")

    Якщо вихідний діапазон знаходиться в діапазоні A2:B6, а текст-зразок - в діапазоні C2, то формула набуває наступного вигляду:

    =IF(ROWS(A2:B6)*COLUMNS(A2:B6)=SUM(--EXACT(C2, A2:B6)), "Всі збігаються", "Не всі")

    На відміну від звичайних формул Excel, формули масивів завершуються натисканням клавіш Ctrl + Shift + Enter. При правильному введенні Excel укладає формулу масиву в {фігурні дужки}, як показано на скріншоті:

    Як порівняти дві комірки за довжиною рядка

    Іноді потрібно перевірити, чи містять текстові рядки в кожному рядку однакову кількість символів. Формула для цієї задачі дуже проста. Спочатку отримується довжина рядка з двох комірок за допомогою функції ЛИНЕЙН, а потім порівнюються числа.

    Припустимо, що рядки, які потрібно порівняти, знаходяться в комірках A2 і B2, використовуйте будь-яку з наступних формул:

    =LEN(A2)=LEN(B2)

    Або

    =IF(LEN(A2)=LEN(B2), "Дорівнює", "Не дорівнює")

    Як ви вже знаєте, перша формула повертає булеві значення TRUE або FALSE, тоді як друга формула виводить ваші власні результати:

    Як показано на скріншоті вище, формули працюють як для текстових рядків, так і для чисел.

    Порада. Якщо два однакових на перший погляд рядки повертають різну довжину, швидше за все проблема в провідний або причіпний місця в одній або обох комірках. У цьому випадку видаліть зайві пробіли за допомогою функції Обрезать. З детальним поясненням і прикладами формул можна ознайомитися тут: Як обрізати пробіли в Excel.

    Порівняти дві комірки за входженнями певного символу

    Це останній приклад в нашому уроці "Порівняння рядків в Excel", і в ньому показано рішення досить специфічного завдання. Припустимо, у вас є 2 стовпчики текстових рядків, які містять важливий для вас символ. Ваша мета - перевірити, чи містять дві комірки в кожному рядку однакову кількість входжень заданого символу.

    Щоб було зрозуміліше, розглянемо наступний приклад. Припустимо, у вас є два списки замовлень відвантажених (стовпець B) і отриманих (стовпець C). Кожен рядок містить замовлення на конкретну позицію, унікальний ідентифікатор якої входить у всі ідентифікатори замовлень і вказаний в цьому ж рядку в стовпці A (див. скріншот нижче). Ви хочете переконатися, що в кожному рядку міститься однакова кількість відвантажених і отриманих замовлень.предмети з цим конкретним ідентифікатором.

    Для розв'язання цієї задачі запишемо формулу з наступною логікою.

    • По-перше, замінити унікальний ідентифікатор нічим за допомогою функції SUBSTITUTE:

      SUBSTITUTE(A1, символ_до_рахунку, "")

    • Потім підрахувати, скільки разів унікальний ідентифікатор зустрічається в кожній комірці. Для цього отримати довжину рядка без унікального ідентифікатора і відняти її від загальної довжини рядка. Ця частина записується, наприклад, для комірки 1 і для комірки 2 окремо:

      LEN(комірка 1) - LEN(ПІДСТАНОВКА(комірка 1, символ_до_підрахунку, ""))

      і

      LEN(комірка 2) - LEN(ПІДСТАНОВКА(комірка 2, символ_до_підрахунку, ""))

    • Нарешті, ви порівнюєте ці 2 числа, ставлячи знак рівності (=) між вищевказаними частинами.
    LEN( комірка 1 ) - LEN(REPLACE( комірка 1 , символ_для_підрахунку , ""))=

    LEN( комірка 2 ) - LEN(REPLACE( комірка 2 , символ_для_підрахунку , ""))

    У нашому прикладі унікальний ідентифікатор знаходиться в комірці А2, а рядки для порівняння - в комірках В2 та С2. Отже, повна формула виглядає наступним чином:

    =LEN(B2)-LEN(SUBSTITUTE(B2,$A2,""))=LEN(C2)-LEN(SUBSTITUTE(C2,$A2,""))

    Формула повертає значення ІСТИНА, якщо комірки B2 і C2 містять однакову кількість входжень символу в комірці A2, інакше - БРЕХНЯ. Щоб зробити результати більш зрозумілими для користувачів, можна вбудувати формулу в функцію ЕСЛИ:

    =IF(LEN(B2)-LEN(SUBSTITUTE(B2, $A2,""))=LEN(C2)-LEN(SUBSTITUTE(C2, $A2,"")), "Дорівнюють", "Не рівні")

    Як ви можете бачити на скріншоті вище, формула чудово працює, незважаючи на кілька додаткових ускладнень:

    • Символ, що підлягає підрахунку (унікальний ідентифікатор), може знаходитися в будь-якому місці текстового рядка.
    • Рядки містять змінну кількість символів і різні роздільники, такі як крапка з комою, кома або пробіл.

    Ось так можна порівнювати рядки в Excel. Щоб детальніше ознайомитися з формулами, розглянутими в цьому уроці, ви можете завантажити таблицю порівняння рядків Excel. Дякую за увагу і сподіваюся побачити вас на нашому блозі наступного тижня.

    Майкл Браун — відданий ентузіаст технологій із пристрастю до спрощення складних процесів за допомогою програмних засобів. Маючи понад десятирічний досвід роботи в технологічній індустрії, він відточив свої навички роботи з Microsoft Excel і Outlook, а також із Google Таблицями та Документами. Блог Майкла присвячений тому, щоб поділитися своїми знаннями та досвідом з іншими, надаючи прості поради та навчальні посібники для підвищення продуктивності та ефективності. Незалежно від того, чи є ви досвідченим професіоналом чи початківцем, блог Майкла пропонує цінну інформацію та практичні поради щодо отримання максимальної користі від цих основних програмних інструментів.