Порівняння двох рядків у двох стовпцях у Excel Sheet


1

Чи може хтось допомогти мені виправити ці дані? Існує довгий список такого типу даних:

введіть тут опис зображення

  • Якщо є стовпці, які точно збігаються, як у рядку 5 (Harley-harley), він повинен повернути 1 або "true" у стовпці C.
  • У стовпцях, які точно не збігаються, як у рядку 3 (Керрі Шон-Кельвін), він повинен повертати 0 або "помилково" у стовпці C,
  • Якщо між двома стовпцями, як і у рядках 1, 2, 4 та 6, є невідповідність, вона повинна повертати -1 або "Невідповідність".

Вам потрібно буде вказати, що означає "мало невідповідності". Наприклад, ви можете сказати, що відповідність двох літер на початку або в кінці кваліфікується як "маленька невідповідність", але ви повинні бути конкретними, щоб написати формулу excel, щоб перевірити, чи виконується умова.
Ацмон

Невелика невідповідність означає, що є один або кілька символів, невідповідних, як у рядку 1 Джессіка-Джассіка, у рядку № 6 Sonica пишеться як Onica.
Джапіндер

Або залиште цю частину, я буду дуже вдячний, якщо ви зможете вирішити перші два пункти.
Джапіндер

Перевірте мою відповідь нижче, щоб дізнатися, чи допомагає вона
Ацмон

Відповіді:


1

Ви можете використовувати цю формулу:

=IF(A1=B1, "1",IF(B1=LEFT(A1,LEN(B1)), "-1", IF(B2=RIGHT(A2,LEN(B2)), "-1", "0")))

Що стосується "маленьких невідповідностей", то він виявлятиме лише випадки, коли B1 є або префіксом, або суфіксом A1 (тому "Sonica" і "onica" вироблять "-1").

введіть тут опис зображення

Виявлення невідповідності одним символом у будь-якому місці в межах A1 (наприклад, "Jessica" vs "Jassica") є складнішим і вимагає певного програмування.


Перш за все, Тханку Атцмон, подивіться, як працює ця формула: Джон Панесар Джон 0 Керрі Шон Кельвін -1 Майкл Мессі Мі 0 Харлі Харлі -1 Соніка Оніка 1 Повертається -1 як для Харлі-Харлі, так і Керрі-Кельвіна .. ??? і 1 для Sonica-onica .... ???
Джапіндер

Додано скріншот, щоб переконатися, що ми маємо на увазі ті самі результати.
Ацмон

О так ... Ось так ... Дякую багато Atmzon..Це дуже корисно ..... будь ласка, зробіть користь мені, щоб вирішити останню точку..Танку знову ...
Джапіндер

Це виходить за межі цієї відповіді SupeUser (це більше довідковий сайт, ніж сайт для безкоштовного написання коду). Вам потрібна нечітка логічна відповідність, запрограмована в VBA. Ознайомтеся з деякими реалізаціями алгоритму відстані Левенштейна в VBA за допомогою StackOverflow.
Ацмон

0

Для першого ви можете використовувати функцію IF для порівняння рядків і отримання результатів як True або False.

Синтаксис: IF (A1 = B1, "True", "False")

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

Вам потрібно поєднувати ці 2 з іншими функціями на основі рядків, щоб отримати результати. Оскільки ваші випадки не зовсім статичні.


ніж, але точна функція не працює для величезних даних. Мені потрібен макрос для його виправлення.
Джапіндер

0

Ви повинні визначитися з кількістю символів, які відповідають, я використав 3 як обмеження, якщо 3 символи відповідають результату, буде -1, якщо менше 0, якщо всі відповідають 1, формула в C1 та натисніть Shift + Ctrl + Введіть формулу масиву і ви можете перетягнути його:

= IF (ISNA (IF (A1 = B1,1, IF) (SUM (MATCH (MID (B1, ROW) 1: "& LEN (A1))), 1), 0))> 3, -1,0))), 0, IF (A1 = B1,1, IF (SUM (МАТЧ (MID (B1, ROW) ("1:" & LEN (B1))), 1), MID (A1, ROW (INDIRECT ("1:" & LEN (A1))), 1), 0))> 3, -1,0)))

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.